Php 获取分页结果的总数
我想在列出所有用户的页面上获取用户总数。此页应分页 到目前为止,我的想法是: 控制器Php 获取分页结果的总数,php,laravel,pagination,Php,Laravel,Pagination,我想在列出所有用户的页面上获取用户总数。此页应分页 到目前为止,我的想法是: 控制器 $users = User::paginate(10); return View::make('index', compact('users')); $products = ProductMaster::paginate(10); //1 page with 10 products return view('index',compact('products')); $users = User::pagin
$users = User::paginate(10);
return View::make('index', compact('users'));
$products = ProductMaster::paginate(10); //1 page with 10 products
return view('index',compact('products'));
$users = User::paginate(10); //1 page with 10 products
return view('users', compact("users"));
视图:
但这只提供了当前页面的用户数。我想计算完整的结果集,如果可能的话,无需再次查询数据库。在Laravel 4中使用:
{{ $users->getTotal() }}
在Laravel 5及以上版本中,使用:
{{ $users->total() }}
控制器
$users = User::paginate(10);
return View::make('index', compact('users'));
$products = ProductMaster::paginate(10); //1 page with 10 products
return view('index',compact('products'));
$users = User::paginate(10); //1 page with 10 products
return view('users', compact("users"));
看法
获取所有项目的总计
$paginator->total()
确定数据存储中匹配项的总数。(使用simplePaginate时不可用)
获取当前页面总数
$paginator->count()
获取当前页面的项数
示例
控制器
$users = User::paginate(10);
return View::make('index', compact('users'));
$products = ProductMaster::paginate(10); //1 page with 10 products
return view('index',compact('products'));
$users = User::paginate(10); //1 page with 10 products
return view('users', compact("users"));
视图:
在Laravel 8x上,此数据也会在响应中返回 来自paginator的JSON将包括元信息,如总计、当前页面、最后页面等。结果记录可通过JSON数组中的数据键获得。以下是通过从路由返回paginator实例创建的JSON示例:
{
"total": 50,
"per_page": 15,
"current_page": 1,
"last_page": 4,
"first_page_url": "http://laravel.app?page=1",
"last_page_url": "http://laravel.app?page=4",
"next_page_url": "http://laravel.app?page=2",
"prev_page_url": null,
"path": "http://laravel.app",
"from": 1,
"to": 15,
"data":[
{
// Record...
},
{
// Record...
}
]
}
你为什么不接受我的回答?如果有些东西不工作,请告诉我,这样我可以帮助你:)哦,对不起,我一定是在未刷新的页面上再次单击了接受图标。它工作得很好!当用一个被接受的答案为一个五年的问题添加答案时,指出你的答案所针对的问题的新方面是很重要的。