我有两个通过构造方法存储在日期数据库中的datetime对象: App \ Entity \ Token
public function __construct()
{
$this->creation = new \DateTime("now");
$this->valid = (new \DateTime("now"))->modify('+1 day');
}
当我尝试将这些对象与我的日期时间进行比较时,结果却不符合预期,请尝试许多不同的情况,使用<>或在两个日期之间使用diff。我可以使用一些特别的东西吗? 示例:
$datenow = new \DateTime("now");
if ( $datenow < $creation && $datenow > $valid ) {
} else{result_always_here}
可能与格式有关,或者我必须使用教义进行比较吗?
谢谢。
亲切的问候。
答案 0 :(得分:1)
我不确定我是否正确理解了这种情况,但是如果您尝试检查某个日期是否在其他两个日期之间,则示例中的代码应如下所示:
if ($datenow > $creation && $datenow < $valid ) {
// Code here should be executed
} else{
// result_always_here is no more
}
因此,比较DateTime
对象可以像您想要的那样进行,还可以检查日期是否在两个对象之间,只是比较运算符是相反的。