我正在进行一些设置以启用/禁用cron任务,并选择运行此任务的时间。
当我禁用cron任务并在不更改时间的情况下启用它时,我的时间戳是过去的,并出现以下错误:
WP Control Plugin Result
My code
function scheduled_task_activation(){
$hook = \'my_hook\';
$options_values = get_option( "option_name" );
$is_cron_active = (!empty( $options_values[\'cron-sync-active\'] ) ) ? true : false;
$cron_sync_time = (!empty( $options_values[\'cron-sync-time\'] ) ) ? $options_values[\'cron-sync-time\']: "00:00:00";
if( !$is_cron_active ){
if( wp_next_scheduled( $hook ) ){
wp_clear_scheduled_hook( $hook );
}
}
else if ( ! wp_next_scheduled( $hook ) || ( $cron_sync_time !== get_option( "cron_time_used") ) ) {
if( $cron_sync_time !== get_option( "cron_time_used" ) )
wp_clear_scheduled_hook( $hook ); //avoid dupplication
var_dump( $cron_sync_time ); //Output : (string) "04:30"
wp_schedule_event( strtotime($cron_sync_time), \'daily\', $hook);
update_option( "cron_time_used", $cron_sync_time );
}
}
如果$cron_sync_time
是字符串;04:30“;,为什么时间戳应该在过去?有人知道怎么解决这个问题吗?