Laravel5.1 框架分页展示实现方法实例分析

时间:2021-05-26

本文实例讲述了Laravel5.1 框架分页展示实现方法。分享给大家供大家参考,具体如下:

Laravel为我们提供了一套分页的逻辑,我们无需自己实现分页逻辑,只需要执行几个简单的方法就能实现漂亮的分页。

1 simplePaginate

这是一种只显示上一页下一页的样式分页,我们来看看怎么用:

class PostController extends Controller{ public function index() {// $posts = Post::simplePaginate(10); 这是Model的版本 /** * simplePaginate * 第一个参数:每页显示多少条数据。 * 第二个参数:(可选)查询的字段 默认是* * 第三个参数:(可选)页码名称 默认是page */ $posts = DB::table('posts')->simplePaginate(10); return view('post.index', compact('posts')); }}

然后在blade模板中用$posts->render()显示:

<!DOCTYPE html><html><head> <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="external nofollow" rel="external nofollow" ></head><body><div class="container"> <h1>Posts</h1> <hr> <ul> @foreach($posts as $post) <li> <h4>{{ $post->title }}</h4> <p>{{ str_limit($post->content) }}</p> </li> @endforeach </ul> {!! $posts->render() !!}</div></body></html>

2 Paginate

这是一个自带页码的样式分页。

class PostController extends Controller{ public function index() {// $posts = Post::paginate(10); 这是Model的版本// $posts = Post::where('create_at', '<', Carbon::now())->paginate(); 可以在where等逻辑后使用 /** * simplePaginate * 第一个参数:每页显示多少条数据。 * 第二个参数:(可选)查询的字段 默认是* * 第三个参数:(可选)页码名称 默认是page * 第四个参数:(可选)代表第几页 默认是null */ $posts = DB::table('posts')->orderBy('created_at', 'desc')->paginate(10); return view('post.index', compact('posts')); }}

然后在blade模板中用$posts->render()显示:

<!DOCTYPE html><html><head> <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="external nofollow" rel="external nofollow" ></head><body><div class="container"> <h1>Posts</h1> <hr> <ul> @foreach($posts as $post) <li> <h4>{{ $post->title }}</h4> <p>{{ str_limit($post->content) }}</p> </li> @endforeach </ul> {!! $posts->render() !!}</div></body></html>

更多关于Laravel相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程》、《php优秀开发框架总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章