为什么我的时间价值比较不正常?

时间:2011-04-11 22:15:41

标签: php

if (
    isset($get['when'])
    && !empty($get['when'])
    && !strtotime($get['when'])
    && strtotime($get['when']) < time()
)

对于例如strtotime($get['when']) = 2010-12-06呈现false,这比ofc的time()小。

如果删除&& !empty($get['when']),则可以正常使用。有什么建议吗?

2 个答案:

答案 0 :(得分:1)

这是代码 green 的有趣部分

&& !strtotime($get['when'])  && strtotime($get['when'])

答案 1 :(得分:1)

您的问题是!strtotime($get['when'])strtotime仅在失败时返回false,并且所有其他值都被视为true,因此您的语句始终为false。我想你想要:

(strtotime($get['when']) !== false)