2017-02-08 2 views
0

Когда я запустил запрос createQueryBuilder, передав массив как значение параметра, показывая, что массив не определен.createQueryBuilder warning Неопределенная переменная: list

$list = array('13','197'); 

    $queryBuilder = function($repo) use ($user) { 
    return $repo->createQueryBuilder('p') 
     ->where('p.id IN (:stores)') 
     ->setParameter('stores',$list); 
     ->orderBy('p.name', 'ASC'); 
    } 
+0

Я думаю, что вы вывесили здесь не фактический код, который вы имеете. Потому что этот код не имеет проблем. –

+0

Я обновил полный скрипт – Developer

ответ

3

Вы должны включить вашу $list переменную в лямбда-функции области. Для этого вам необходимо предоставить эту переменную в use -часть определения лямбда-функции:

$list = array('13','197'); 
$queryBuilder = function($repo) use ($user, $list) { 
    return $repo->createQueryBuilder('p') 
     ->where('p.id IN (:stores)') 
     ->setParameter('stores',$list); 
     ->orderBy('p.name', 'ASC'); 
} 
Смежные вопросы