laravel eloquent multiple where statement

时间:2015-01-25 11:17:21

标签: laravel eloquent

我已将以下代码用于条件查询。但是我没有在foreach语句中得到结果但是如果我使用$ member-> first()我得到了结果。这是在laravel中使用条件的正确方法吗?

$member = Member:query();
 if(!empty($param['activity'])){
                $member->where('activity', 'LIKE', $param['activity'] .'%');
            }
            if(!empty($param['MemberName'])){
                $member->where('MemberName', 'LIKE', $param['MemberName'] .'%');
            }
            if(!empty($param['Designation'])){
                $member->where('Designation', 'LIKE', $param['Designation'] .'%');
            }
    $member->take(100)->skip($offset)->get();
    foreach ($member as $arr)
            {
    ....
    }

1 个答案:

答案 0 :(得分:1)

这是完全正确的方法。但是你错过了一件小事。 get()将返回结果,但 $member仍将是查询构建器实例。您需要做的是将结果分配给$member

$member = $member->take(100)->skip($offset)->get();