我在php中比较两个unix时间戳时遇到了问题。
$time_now = mktime();
if($auction->time_end > $time_now){
//true
}
else{
//false
}
$ auction-> time_end为1362579127,并从db设置为int。 $ time_now例如是1364129253,并设置为int,两者都使用var_dump进行检查,并确实以int整数返回。
问题是PHP似乎认为1362579127大于1364129253(返回false)它不是..我在这里遗漏了什么?如果我将值输入到if语句中,它会按原样运行,但是当它比较对象时,它似乎不喜欢它。
答案 0 :(得分:1)
看看你的问题,似乎你的逻辑是错误的。当前时间总是比过去的时间更长。请尝试以下方法:
if($time_now>$auction->time_end){
//...
}
答案 1 :(得分:0)
如果您使用32位系统,则int类型的最大值定义为大约20亿。你的两个数字似乎都太大了。请参阅Documentation。