5

以下のようなことができないことがわかりました。' :user'が2回使用されていることに注意してください。

$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');
4

1 に答える 1

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));
于 2011-09-18T15:54:50.447 に答える