0
그래, 변수가 setParameter로 전달 될 때 쿼리 빌더가 작동하지 않는 이유를 알 수 없습니다.symfony setParameter가 제대로 작동하지 않습니다.
이 작동 : 그것은 $ 아래로 그것을 더 드릴 널
// from an entity
$matches = $em->getRepository('AppBundle:User')->findByMatch($type);
//.........
// repo
public function findByMatch($name)
{
$result = $this->createQueryBuilder('u')
->select('u.firstname, u.lastname')
->where('u.firstname LIKE :fname')
->setParameter('fname', ' % '.$name. ' %')
;
return $result->getQuery()->getResult();
}
로 이름을 반환,
public function findByMatch($name)
{
$result = $this->createQueryBuilder('u')
->select('u.firstname, u.lastname')
->where('u.firstname LIKE :fname')
->setParameter('fname', ' % '.'paul'.' %')
;
return $result->getQuery()->getResult();
}
하지만 기준이 변수를 통해 전달 될 때, 그것은하지 않습니다,이 '아무튼 변수가 전달되지 않는 것은 아닙니다.
public function findByMatch($name = "paul")
{
$result = $this->createQueryBuilder('u')
->select('u.firstname, u.lastname')
->where('u.firstname LIKE :fname')
->setParameter('fname', ' % '.$name. ' %')
;
//return $result;
return $result->getQuery()->getResult();
}
$ name이 (가) 설정되지 않았거나 게시 한 코드가 실제 코드와 일치하지 않습니다. 그리고 % 주위에 공백을 두는 것은 약간 이상합니다. "paul"대신 "paul"과 일치시키고 싶습니까? – Cerad