2010-12-18 12 views
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'); 

उत्तर

3

यदि आप उपयोग करते हैं? एक्स आप ऐसा कर सकते हैं।

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