2010-12-18 8 views
5

I私は以下のような何かを行うことができないことがわかり、予告「:user」が二回Doctrine 2 DQL:名前付きパラメータを再利用できませんか?

$query = $em->createQuery('select p from Application\Models\Project p 
          WHERE p.owner = :user 
          OR :user MEMBER OF p.collaborators'); 
$query->setParameter('user', $user); 

使用され、私はエラーを取得する「array_combine(): Both parameters should have an equal number of elements

私の代わりに

を以下のような何かをすることによって、問題を解決することができます
$query = $em->createQuery('select p from Application\Models\Project p 
          WHERE p.owner = :user 
          OR :user1 MEMBER OF p.collaborators'); 

答えて

3

もしあなたが?Xを使うなら、それを行うことができます。

$query = $em->createQuery('select p from Application\Models\Project p 
          WHERE p.owner = ?0 
          OR ?0 MEMBER OF p.collaborators'); 
$query->setParameters(array($user)); 
関連する問題