如何将DateTime对象与doctrine 2.0 DateTime进行比较

时间:2012-01-26 09:41:35

标签: php doctrine

我正在处理一个过滤器查询,它会返回某些日期之间的帖子,但是,我无法找到一种方法来比较PHP DateTime对象和数据库中的日期时间。过滤器组件以m / d / Y格式给出日期,数据库中的日期时间为m / d / Y H:i:s格式。

$posted_before = \DateTime::createFromFormat("m/d/Y", $posted_before);
$posted_before->format("m/d/Y H:i:s");
$query .= " AND t.posted_date >= $posted_before"; 

我正在使用Doctrine 2.0

2 个答案:

答案 0 :(得分:1)

在我看来,您正在将一个对象注入到字符串中,尝试存储format();的返回值。还可以根据MySQL格式设置日期格式:

$posted_before = \DateTime::createFromFormat("m/d/Y", $posted_before);
$posted_date = $posted_before->format("Y-m-d H:i:s");
$query .= " AND t.posted_date >= $posted_date"; 

答案 1 :(得分:0)

没有必要格式化Datetime对象,可以使用setParameter方法:

$qb->where('t.posted_date >= :minDatetime');
$qb->setParameter('minDatetime', $minDatetime);