2014-02-07 173 views
-1
public function searchAction(Request $request) 
{  
    $em = $this->getDoctrine()->getEntityManager(); 
    $searchName = $request->query->get('search_name'); 
    $searches= \explode(' ', $searchName); 
    $search = $em->createQueryBuilder()->select('c') 
        ->from('SavvyContactBundle:Contact', 'c') 
        ->where("c.name = :name") 
        ->setParameter('name', $searchName) 
        ->addOrderBy('c.id', 'DESC') 
        ->getQuery(); 

    return $this->render('SavvyContactBundle:Contact:list.html.twig', array('search' => $search, 'searches' => $searches)); 
} 

这是特定的单词基本的搜索,我想做出这样的搜索,其估算在输入栏,请帮助,让我知道如果我错了地方的每一个字高级搜索。高级搜索

+0

请问您能给我一些反馈吗? – coma

+0

对不起,我忘了你,但你的代码工作谢谢 – craig

回答

0

我正在写手机,但你明白了吗?

... 

$words = explode(' ', $searchName); 

$qb = $em->createQueryBuilder() 
    ->select('c') 
    ->from('SavvyContactBundle:Contact', 'c') 
    ->addOrderBy('c.id', 'DESC'); 

foreach ($words as $word) { 

    $qb 
     ->orWhere("c.name = :word") 
     ->setParameter('word', $word); 
} 

$contacts = $qb->getQuery()->execute(); 

...