如何在Doctrine 2 DQL中使用now()?

时间:2011-12-01 20:32:10

标签: mysql symfony doctrine-orm dql

  

$ php app / console doctrine:query:dql'SELECT now()'

     

[学说\ ORM \查询\ QueryException]    [语法错误]第0行,第7列:错误:预期的已知函数,得到'现在'

如何在Doctrine DQL中使用MySQL now()函数?

2 个答案:

答案 0 :(得分:108)

相当于MySQL的NOW()是Doctrine DQL的 CURRENT_TIMESTAMP()

CURRENT_DATE()仅返回日期部分。

答案 1 :(得分:0)

CURRENT_TIMESTAMP()使用数据库时区,这可能会导致奇怪的问题。 更简单的方法-您可以使用参数并将新的\ DateTime()绑定到该参数(以便使用php时区)

它当然不适用于命令行,但是我想您打算在controller / service / repository / etc中使用它。