Symfony原则为where子句

时间:2018-12-14 07:21:35

标签: symfony doctrine

我需要为$ qb-> andWhere()添加一个数组。这是我的代码。

$fuel_type = array("petrol", "diesel", "gasoline");
$qb = $this->createQueryBuilder('c')
$qb->andWhere('c.fuelType = :fuel_type')
            ->setParameter('fuel_type', $fuel_type);
return $qb->getQuery()
                    ->getResult();

我需要检查遍历$ fuel_type值并在哪里检查它们。有更简单的方法吗?

1 个答案:

答案 0 :(得分:3)

在您的控制器中,服务或其他类似的事情

$fuel_type = array("petrol", "diesel", "gasoline");

$result = $em->getRepository('App\Entity\Name')->findBy(['fuel_type'=> $fuel_type]);

或直接在存储库中

$fuel_type = array("petrol", "diesel", "gasoline");

return $this->createQueryBuilder('c')
        ->where('c.fuelType IN (:val)')
        ->setParameter('val', $fuel_type )
        ->getQuery()
        ->getResult();