【问题标题】:Doctrine 2 DQL: Cannot reuse named parameter?Doctrine 2 DQL:不能重用命名参数?
【发布时间】:2010-12-18 12:03:37
【问题描述】:

我发现我无法执行以下操作,请注意“:user”被使用了两次

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

【问题讨论】:

    标签: php doctrine-orm dql


    【解决方案1】:

    如果您使用 ?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));
    

    【讨论】:

      猜你喜欢
      • 2014-08-25
      • 1970-01-01
      • 1970-01-01
      • 2011-03-20
      • 1970-01-01
      • 1970-01-01
      • 2014-09-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多