我在这里有一种情况,我目前正在尝试编写一些可以提醒某些事件或任务的代码。为此,我有一个ajax函数,它将每10分钟检查一次是否显示提醒。在我尝试比较提醒的日期和今天的日期之前,它工作正常。
我正在访问我的数据库以获取所有带有提醒标志的事件,并且我已经通过一个已编写的函数获取了此提醒所需的持续时间(例如15分钟,3小时,2周)。以分钟为单位给我持续时间。
主要问题是,当我尝试将持续时间减去当前日期(具有提醒日期)时,什么也没发生,$ date_rappel与$ date_current相同。我到处搜索以查看是否做错了,但看不到问题。
我试图在代码中包含的每个变量都触发Trigger_error()和var_dump(),以查看是否有些奇怪,但一切似乎都很正常。
$events = '[';
$zz=0;
for ($r=0;$r < count($array_search_result);$r++)
{
$data=new $class_name;
$data->load($array_search_result[$r]);
$rappel = get_simple_obj('reminder_table',$data->cle_antlist_rappels);
$duree = $rappel['duree'];
$tmp_date = strval($data->date_echeance);
$tmp_heure = strval($data->heure_echeance);
$date_and_time = $tmp_date." ".$tmp_heure;
$date_current = new DateTime($date_and_time);
$date_rappel = $date_current;
if($duree < 60){
$tmpinterval = 'PT'.$duree.'M';
$interval = new DateInterval($tmpinterval);
$date_rappel->sub($interval);
}elseif($duree >= 60 && $duree < 1440){
$duree = $duree / 60;
$tmpinterval = 'PT'.$duree.'H';
$interval = new DateInterval($tmpinterval);
$date_rappel->sub($interval);
}elseif($duree >= 1440 && $duree < 10080){
$duree = $duree / 60 / 24;
$tmpinterval = 'P'.$duree.'D';
$interval = new DateInterval($tmpinterval);
$date_rappel->sub($interval);
}else{
$duree = $duree / 60 / 24 / 7;
$tmpinterval = 'P'.$duree.'W';
$interval = new DateInterval($tmpinterval);
$date_rappel->sub($interval);
}
if($date_current < $date_rappel == true){
// Add the event with the reminder to the ajax request
}
$events .= $event;
$events .= ']';
$returnSate = 'OK';
$status_response=0;
这是$date_current
和$date_rappel
的trigger_error返回的内容:
PHP Notice: 11:39:00 2019-05-14 in .../operation-reminder.php on line 308
PHP Notice: 11:39:00 2019-05-14 in .../operation-reminder.php on line 309