使用Laravel的查询生成器添加多个where子句

时间:2015-04-02 14:17:34

标签: laravel laravel-5

这是我目前的查询:

$logs = LogModel::where('spider_name', '=', $spider_name )->get();

如何添加其他两个where条件?

2 个答案:

答案 0 :(得分:2)

您可以通过这种方式链接任意数量的条件:

$logs = LogModel::where('spider_name', '=', $spider_name )
                ->where('column1', '=', $value1 )
                ->where('column2', '=', $value2 )
                ->get();

以这种方式链接条件时,将使用AND运算符生成查询。如果您需要使用OR等其他运算符,可以在Advanced WheresLaravel Query Builder Docs部分阅读更多内容。

答案 1 :(得分:0)

您可以链接where来电,或只是将数组传递给where

$logs = LogModel::where([
    'spider_name' => $spider_name,
    'hobit_name'  => $hobit_name,
])->get();

如果您有一些与列名完全匹配的变量,则可以使用compact

$spider_name = 'Shelob';
$hobit_name = 'Frodo';

$logs = LogModel::where(compact('spider_name', 'hobit_name'))->get();