Symfony 条令查询生成器和何处不工作
有人能解释一下为什么我的查询的andWhere部分不起作用吗 以下是我的功能:Symfony 条令查询生成器和何处不工作,symfony,doctrine-orm,query-builder,Symfony,Doctrine Orm,Query Builder,有人能解释一下为什么我的查询的andWhere部分不起作用吗 以下是我的功能: public function searchSpectacle(request $request){ $data = $request->request->all(); $terms = explode(" ", $data["searchterms"]); $date = str_replace('/', '-', $data['datestring']);
public function searchSpectacle(request $request){
$data = $request->request->all();
$terms = explode(" ", $data["searchterms"]);
$date = str_replace('/', '-', $data['datestring']);
$query = $this->getDoctrine()->getManager()->createQueryBuilder();
$query->select('S')
->from('AppBundle:Spectacle','S');
$i = 0;
$parameters = array();
foreach ($terms as $key => $term){
$query->orWhere('LOWER(S.nom) LIKE ?' . $i++);
$parameters[] = '%' . $term . '%';
}
foreach ($terms as $key => $term){
$query->orWhere('LOWER(S.artiste) LIKE ?' . $i++);
$parameters[] = '%' . $term . '%';
}
if(!empty($date)){
$query->andWhere('S.date = ?');
$parameters[] = $date;
}
$query->setParameters($parameters);
$spectacles = $query->getQuery()->getResult();
return $this->render('liste_complete.html.twig', array('spectacles' => $spectacles));
}
一切都很完美,但当我添加
if(!empty($date)){
$query->andWhere('S.date = ?');
$parameters[] = $date;
}
第三部分:无效的参数格式?给,但是:还是?预料之中
有什么想法吗
谢谢大家!
Guillaume您可能没有像在其他参数中那样连接参数id。试试这个:
if(!empty($date)){
$query->andWhere('S.date = ?' . $i++);
$parameters[] = $date;
}
希望这个帮助有用!真不敢相信我竟然没注意到。非常感谢您,先生。