【发布时间】:2019-08-29 23:06:36
【问题描述】:
我有两个日期时间对象通过构造方法存储在我的数据库中: 应用\实体\令牌
public function __construct()
{
$this->creation = new \DateTime("now");
$this->valid = (new \DateTime("now"))->modify('+1 day');
}
当我尝试将这些对象与我的 datetimenow 进行比较时,结果不符合预期,尝试了许多不同的情况,露营 或使用两个日期之间的差异。我应该使用一些特别的东西吗?: 示例:
$datenow = new \DateTime("now");
if ( $datenow < $creation && $datenow > $valid ) {
} else{result_always_here}
可能与格式有关,或者我必须使用教义来比较它?
谢谢。
亲切的问候。
【问题讨论】:
-
根据您的示例代码,您的 $datenow 值 (18:14:26) 比您的创建属性 (17:56:23) 更新
-
日期永远不能早于某个日期和在同一日期+1天之后...
-
我通过我的对象获得了一个示例日期时间: $creation = $pledge->getCreation(); $valid = $pledge->getValid();它在构造函数构建它时返回日期和日期+1。但是在比较这些日期时间时并不重要,因为正如我所说,我通过学说检索这些数据作为任何其他对象。我试图比较一个日期是否在两个日期之间,在这里我只需要比较一个日期时间是大于有效时间,所以 $datenow > $valid 按预期工作,虽然我不知道为什么不能比较 datetime 是否在其他两个日期之间。我猜我做错了什么。干杯。
-
Symfony 以什么方式改变行为?请提取minimal reproducible example 以确定它是否与您的问题真正相关。