symfony2 doctrine datetime忽略时间?

时间:2015-09-14 12:43:13

标签: symfony datetime doctrine query-builder

您好我正在尝试在日期时间之后获取日期('现在)

我的查询没有检查时间值。

我有以下日期:

  • 2015-09-03 18:00:00
  • 2015-09-03 18:00:00
  • 2015-09-10 16:30:00
  • 2015-09-13 09:00:00
  • 2015-09-13 09:00:00
  • 2015-09-13 09:00:00
  • 2015-09-13 09:00:00
  • 2015-09-13 09:00:00
  • 2015-09-13 09:00:00
  • 2015-09-13 09:00:00
  • 2015-09-13 12:05:00
  • 2015-09-13 12:05:00
  • 2015-09-13 12:25:00
  • 2015-09-13 12:25:00
  • 2015-09-13 12:25:00
  • 2015-09-13 16:30:00
  • 2015-09-14 15:10:00
  • 2015-09-14 18:20:00

似乎完全无视时间 我可以让它在14号之后返回任何东西,我希望它能返回任何时间大于我的开始日期(2015-09-14 12:40:39

public function getRemainingKeysForTimeframe($timeframeID){
        $startDate = new \DateTime('now');
        $queryBuilder = $this->createQueryBuilder('q')
            ->select('q')
            ->andWhere('q.timeframeID = :timeframeID')
            ->andWhere('q.date >= :start')
            ->setParameter('timeframeID', $timeframeID)
            ->setParameter('start', $startDate->format('Y-m-d h:i:s'));
        return $queryBuilder;
    }

1 个答案:

答案 0 :(得分:1)

在查询构建器中注入实际的\DateTime对象作为参数:

->setParameter('start', $startDate);

<强>不

->setParameter('start', $startDate->format('Y-m-d h:i:s'));