-1

如何在php中比较两个日期。我从数据库中得到了一组日期,我希望它与今天的日期进行比较。

我有这样的东西。

$d['dd'] = 10;
$d['mm'] = 12;
$d['yy'] = 13;

现在我做了这样的事情:

$date = $d['yy'].'-'.$d['mm'].'-'.$d['dd'];
$date_diff=strtotime(date("y-m-d"))-strtotime($date); 
if($date_diff>0){
     //this date is gone.
}
 // I want to show this day will go in 5 days. To do this I have following.      
if((strtotime(date("y-m-d", strtotime(date("y-m-d", strtotime(date('y-m-d'))) . "+ 5 days")))-$date_diff)>0){
// This day will go in 5 days time.
}

现在我的问题是最好的方法是什么,或者我怎样才能以更好(更可靠)的方式做到这一点。任何建议都会有所帮助。

提前致谢。

4

1 回答 1

0

在进行日期比较时,您应该直接在数据库中进行(如果可能的话),因为 mysql 知道时区、夏令时、闰年等。PHP DateTime 有问题的历史,如果你能让数据库做到这一点,我会推荐这个。

将日期保存为 DateTime 并使用内置的 mysql 日期函数:http ://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

于 2013-10-26T13:33:28.263 回答