如何在laravel 5.2

时间:2017-05-04 10:33:28

标签: php mysql laravel laravel-5.2

我对此感到困惑。我有两个复选框,即修指甲和修脚 当用户选择修指甲ajax运行然后我想找到所有行中的修指甲单词像这样: -

enter code here
id   name
 1    Get Manicure
 2    Manicure & Pedicure
 3    Repair Manicure
 4    Get Pedicure
 5    Dummy text

现在假设我的桌子上有五条记录 当用户点击修指甲复选框时,我希望它必须返回1,2,3 id 当用户点击修指甲和修脚时我想要1,2,3,4记录 当用户点击修脚时,只有2,4 id必须返回 任何人都可以帮助我如何实现这一功能。这是我的代码

enter code here
$query = Service::whereIn('name',array('Pedicure'))->get();// Only pedicure
$query = Service::whereIn('name',array('Manicure'))->get(); // Only manicure
$query = Service::whereIn('name',array('Manicure','pedicure'))->get(); //Both

我认为这可能适用于在

之间使用forloop的条件

1 个答案:

答案 0 :(得分:0)

更改您的查询

//$searchArray = ['Manicure'];
//$searchArray = ['pedicure'];
$searchArray = ['Manicure','pedicure'];
$query = new Service();
$isFirst = true;
foreach($searchArray as $string){
    if($isFirst){
        $query->where('name','like','%'.$string.'%');
        $isFirst = false;
    }else{
        $query->orWhere('name','like','%'.$string.'%');
    }
}
$result = $query->get();