Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在查询Laravel雄辩的结果时使用多个参数_Php_Laravel_Eloquent - Fatal编程技术网

Php 如何在查询Laravel雄辩的结果时使用多个参数

Php 如何在查询Laravel雄辩的结果时使用多个参数,php,laravel,eloquent,Php,Laravel,Eloquent,我通过一个Laravel雄辩的控制器查询DB帖子,我想先过滤帖子,然后分页 $filter = ['author_id' => $id, 'status' => 'live', 'type' => $type]; $posts = Post::where($filter)->orderBy('id','desc')->get(); $posts = Post::paginate(1, ['*'], 'page', $page); return $posts; 当

我通过一个Laravel雄辩的控制器查询DB帖子,我想先过滤帖子,然后分页

$filter = ['author_id' => $id, 'status' => 'live', 'type' => $type];
$posts = Post::where($filter)->orderBy('id','desc')->get();
$posts = Post::paginate(1, ['*'], 'page', $page);

return $posts;
当然,目前它只会分页。我如何组合这两个
$posts
,以便对筛选结果进行分页


谢谢

只需将以下方法链接起来即可:

$posts = Post::where($filter)
    ->orderBy('id','desc')
    ->paginate(1, ['*'], 'page', $page);

只需将以下方法链接起来即可:

$posts = Post::where($filter)
    ->orderBy('id','desc')
    ->paginate(1, ['*'], 'page', $page);

您还可以像这样简化解决方案,这将变得更加灵活

$filter = ['author_id' => $id, 'status' => 'live', 'type' => $type];

$posts = new Post();
$posts = $posts->where($filter);
$posts = $posts->orderBy('id','desc');
$posts = $posts->paginate(1, ['*'], 'page', $page);

return $posts;

您还可以像这样简化解决方案,这将变得更加灵活

$filter = ['author_id' => $id, 'status' => 'live', 'type' => $type];

$posts = new Post();
$posts = $posts->where($filter);
$posts = $posts->orderBy('id','desc');
$posts = $posts->paginate(1, ['*'], 'page', $page);

return $posts;

杰出的现在说得通了-认为每个都需要
。太棒了!现在有意义了-认为每个都需要