$currentTime = date("Hi");
if($currentTime > 0559 && $currentTime < 1401) {
// Stuff here
}
这是我当前的代码,但if语句似乎在午夜之后的任何时间运行,而不是仅在0600(当地时间早上6:00)之后运行。任何想法会导致这种情况。
答案 0 :(得分:3)
由于前面的(if($currentTime > 0559)
,0559
- octal
将被视为0
。
只需在比较if($currentTime > 559)
答案 1 :(得分:2)
您使用的是您认为正在使用的其他方式的整数,请查看integer
文档here
示例强>
$a = 0123; // octal number (equivalent to 83 decimal)
让我们回到您的代码,修复它只需在整数之前删除0
,这样它就不会被解释为octal
,只需更改为
if(($currentTime > 559) && ($currentTime < 1401)) {
// Stuff here
}
答案 2 :(得分:1)
确保使用整数。
$currentTime = intval( date("Hi") );
if ($currentTime > 559 && $currentTime < 1401) {
// Stuff here
}