Laravel 仅从分页获取数据

问题描述 投票:0回答:3

我查询的用户列表如下:

$users = \App\User::selectRaw('id, "user_name"')->paginate(2);

返回:

{
    current_page: 1,
    data: [
        {
            id: 2,
            user_name: "user_name"
        },
        {
            id: 3,
            user_name: "user_name"
        }
    ],
    first_page_url: "http://localhost:8000/users?page=1",
    from: 1,
    last_page: 2,
    last_page_url: "http://localhost:8000/users?page=2",
    next_page_url: "http://localhost:8000/users?page=2",
    path: "http://localhost:8000/users",
    per_page: 2,
    prev_page_url: null,
    to: 2,
    total: 3
}

我需要将

data:
中存储的用户值存储到一个变量中,我该如何实现呢?

php json laravel pagination
3个回答
6
投票

你可以试试这个:

$users = \App\User::selectRaw('id, "user_name"')->paginate(2);

$data = $users->toArray()['data'];

或者:

$data = $users->items();

3
投票

您可以获取数据中的项目为

$users = \App\User::selectRaw('id, "user_name"')->paginate(2);


//$users is an instance of `Illuminate\Pagination\LengthAwarePaginator`
//So to get the items

$users->items();

-1
投票

$users = \App\User::selectRaw('id, "user_name"')->paginate(2);

$data = $users->getCollection();

编辑: 对于那些不知道如何将“Collection”转换为“Array”的人,以下 Laravel 官方文档中的链接将会有所帮助:https://laravel.com/docs/10.x/collections#method-toarray

© www.soinside.com 2019 - 2024. All rights reserved.