Php 为什么我的时间价值比较不能正常工作? if( isset($get['when'])) &&!empty($get['when'])) &&!strotime($get['when'])) &&strotime($get['when'])
例如,Php 为什么我的时间价值比较不能正常工作? if( isset($get['when'])) &&!empty($get['when'])) &&!strotime($get['when'])) &&strotime($get['when']),php,Php,例如,strottime($get['when'])=2010-12-06,这小于ofc的时间() 如果我删除&&!空($get['when'])它工作正常。有什么建议吗?这是绿色代码中非常有趣的部分 &&!strotime($get['when'])和&strotime($get['when'])您的问题是!strotime($get['when'])strotime仅在失败时返回false,所有其他值都被视为true,因此您的语句总是false。我想你想要: && !strt
strottime($get['when'])=2010-12-06
,这小于ofc的时间()
如果我删除
&&!空($get['when'])
它工作正常。有什么建议吗?这是绿色代码中非常有趣的部分
&&!strotime($get['when'])和&strotime($get['when'])
您的问题是!strotime($get['when'])
strotime
仅在失败时返回false,所有其他值都被视为true
,因此您的语句总是false。我想你想要:
&& !strtotime($get['when']) && strtotime($get['when'])
生存还是毁灭,这是个问题。!如果在1.1.1970 00:00:00
之后经过一段时间,则strotime($get['when'])
将始终计算为false
,使整个表达式为false
。您可以轻松地测试它:var_dump(!strotime('2010-12-06')代码>为您提供bool(false)
。
&& !strtotime($get['when']) && strtotime($get['when'])
(strtotime($get['when']) !== false)