我有一个简单的事情,我想解决。
我有一个存储在表格中的日期,我将它与php生成的日期进行比较。
即:
if($row['start_date'] < date("Y-m-d")) {
// table stored date larger than php date
echo 'hi';
} else {
// php date larger than table stored date
echo 'bye';
}
这对我来说似乎没问题,但是
if $row['start_date'] === '2011-09-13' AND date("Y-m-d") === '2011-09-15'.
我最终得到了:
hi
这可能是我认为左边是正确的,而大于符号实际上是小于的那些黄昏时刻之一。所以请帮助我 - 为什么这不起作用?
答案 0 :(得分:4)
要比较strtotime()
和$row['start_date']
{/ 1>}必须使用time()
的日期
if(strtotime($row['start_date']) < time())
答案 1 :(得分:2)
如果$row['start_date'] = '2011-09-13'
和date("Y-m-d") = '2011-09-15'
,那么您的PHP日期大于行的日期,因此if
为真,所有'2011-09-13'
为“更小({{ 1}})“比<
。将您的'2011-09-15'
翻转为<
即可。
>
答案 2 :(得分:1)
使用strtotime()
将字符串转换为unix时间戳,然后进行比较。
或者使用DateTime对象。
答案 3 :(得分:0)