laravel LengthAwarePaginator 类不起作用

Maz*_*kah 2 php pagination laravel

我正在尝试在 laravel 中手动创建分页,但它返回我模型中的所有项目,而不是我设置的“perPage”值,下面是我的代码:

$a = mazee\ad::all();
  $p = new \Illuminate\Pagination\LengthAwarePaginator($a ,count($a),3, 1);

   dd($p) ;
Run Code Online (Sandbox Code Playgroud)

所有链接: '?page=2' , '?page=3' , '?page=4' 都输出相同的结果在此处输入图片说明

Dha*_*tra 7

请参阅的使用示例\Illuminate\Pagination\LengthAwarePaginator中的类\Illuminate\Database\Query\Builder

/**
     * Paginate the given query into a simple paginator.
     *
     * @param  int  $perPage
     * @param  array  $columns
     * @param  string  $pageName
     * @param  int|null  $page
     * @return \Illuminate\Contracts\Pagination\LengthAwarePaginator
     */
    public function paginate($perPage = 15, $columns = ['*'], $pageName = 'page', $page = null)
    {
        $page = $page ?: Paginator::resolveCurrentPage($pageName);

        $total = $this->getCountForPagination($columns);

        $results = $total ? $this->forPage($page, $perPage)->get($columns) : [];

        return new LengthAwarePaginator($results, $total, $perPage, $page, [
            'path' => Paginator::resolveCurrentPath(),
            'pageName' => $pageName,
        ]);
    }
Run Code Online (Sandbox Code Playgroud)

传递给 LengthAwarePaginator ($results) 的第一个参数不应是模型中的所有行。希望它有帮助:D