2

私はこれに似たクエリを持っています:

$em->createQuery(
    'SELECT t FROM myTestBundle:User t WHERE t.userId = :username AND
    t.tokenCreatedtime > (NOW() - INTERVAL 800 MINUTE)'
);

(NOW() - INTERVAL 800 MINUTE)DQLで機能していません。これを達成する他の方法はありますか?

4

1 に答える 1

3

DateTimeプレースホルダーを作成してオブジェクトを渡すことをお勧めします

$q = $em->createQuery(
    'SELECT t FROM myTestBundle:User t WHERE t.userId = :username AND
    t.tokenCreatedtime > :createdTime '
);
$q->setParameter(':createdTime',new \DateTime("-800 minute")

\DateTimeまた、オブジェクトを次のように作成することもできますnew \DateTime("-800 minute")

于 2013-03-07T12:28:15.273 に答える