我有日期的格式为:比较日期,只显示未来事件:PHP
June 22, 2012
使用PHP的日期功能我得到的日期,像这样:
如果使用声明我比较两个希望消除所有已经通过的日期:
if(date("F j, Y") > $date)
然而,它的工作,但离开除了一个日期:
February 14, 2012
有人可以解释为什么或告诉我一个更好的方法来做到这一点?
我有日期的格式为:比较日期,只显示未来事件:PHP
June 22, 2012
使用PHP的日期功能我得到的日期,像这样:
如果使用声明我比较两个希望消除所有已经通过的日期:
if(date("F j, Y") > $date)
然而,它的工作,但离开除了一个日期:
February 14, 2012
有人可以解释为什么或告诉我一个更好的方法来做到这一点?
date()返回一个字符串,所以在你的情况下,它只返回大于字符串“2012年6月22日”的字符串。尝试在你的约会使用strtotime()()调用,e.g
$today = strtotime($todays_date);
这将需要()的返回日期时间字符串,并将其转换为UNIX时间戳,你可以用它来比较日期。
非常感谢!它令人惊讶,当你疲倦的时候你会忽略它 – 2012-07-17 05:21:44
很高兴帮助....我确切地知道你的意思:) – ply 2012-07-17 05:37:53
http://stackoverflow.com/questions/7038484/how-to-compare-two-dates-in-php-and-echo-newer-one?lq=1 – 2012-07-17 04:51:26
不要比较字符串,你会因为F在字母D之后出现,所以“2012年2月”这样的愚蠢行为会比“2012年12月”更大。比较原生的PHP时间戳 - 简单的整数。 – 2012-07-17 04:52:48