Php日期:评估-1天

时间:2012-08-09 07:11:59

标签: php codeigniter date

我的项目中有一个事件,其开始日期存储在数据库中。 我想在活动开始前一天和活动开始的那几天宣传活动:

所以我做了

<?php $today = date('Y-m-d');
   $event_start_date = $event->event_start_date;
   $event_valid_advertise_date = strtotime ( '-1 day' , strtotime ( $event_start_date ) ) ;
   $event_valid_advertise_date = date ( 'Y-m-d' , $event_valid_advertise_date );
 ?>

我现在被困住了;我正在使用codeigniter并且数据库部分没问题,但我只是想知道如何减去 $ today $ event_start_date 以确定有效期用于广告。

PHP函数date_diff($today,$event_valid_date)给出了一个错误说:

arg 1 should be of type date , string provided

1 个答案:

答案 0 :(得分:2)

这将解决您的上述问题:

$now = strtotime("now");
$event_advertise_date = strtotime('-1 day', strtotime($event->event_start_date));
if ($now > $event_advertise_date)
{
    echo "show event";
}
else
{
    echo "too early for this event";
}

阅读你的问题 - 你也可以使用这个改进的代码在事件完成后停止显示事件(我做了一些假设 - 但你明白了):

$now = strtotime("now");
$event_advertise_date = strtotime('-1 day', strtotime($event->event_start_date));
$event_end_date = strtotime($event->event_end_date);
if (($now > $event_advertise_date) && ($now < $event_end_date))
{
    echo "show event";
}
else
{
    echo "too early or late for this event";
}