2016-02-28 4 views
0

У меня есть:Множественный выбор DQL

if (count($data['paymentTypes'])<5) { 
    $arr = array(); 
    foreach (array_values($data['paymentTypes']) as $value) { $arr[]=$value->getId(); } 
    $query = $query->leftJoin('p.payments','g')->where('g.id IN(:num)')->setParameter('num', $arr); 
} 

if (count($data['expertise']->toArray())>0) { 
    $arr = array(); 
    foreach (array_values($data['expertise']->toArray()) as $value) { $arr[]=$value->getId(); } 
    $query = $query->leftJoin('p.expertise','g')->where('g.id IN(:num)')->setParameter('num', $arr); 
} 

Как я могу остановить запрос от разрыва в случае, если оба утверждения верны? Я ожидал бы, что левша и люди собираются, но вместо этого они исключают исключение. Каков самый чистый способ сделать это?

+0

Вы должны попытаться использовать разные псевдонимы и имя параметра во второй части, чем в первом. – 1ed

+0

Duh! Спасибо Спасибо спасибо! Всегда приятно иметь дополнительную пару глаз! –

ответ

0

Используйте разные псевдонимы и имя параметра во второй части, чем в первом.

Смежные вопросы