当前位置:首页 > CMS教程 > 其它CMS > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2022-02-04 13:53:38 浏览: 评论:0 

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

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

1 simplePaginate

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

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

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

  1. <!DOCTYPE html> 
  2. <html> 
  3. <head> 
  4.   <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="external nofollow" rel="external nofollow" > 
  5. </head> 
  6. <body> 
  7. <div class="container"
  8.   <h1>Posts</h1> 
  9.   <hr> 
  10.   <ul> 
  11.     @foreach($posts as $post
  12.       <li> 
  13.         <h4>{{ $post->title }}</h4> 
  14.         <p>{{ str_limit($post->content) }}</p> 
  15.       </li> 
  16.     @endforeach 
  17.   </ul> 
  18.   {!! $posts->render() !!} 
  19. </div> 
  20. </body> 
  21. </html> 

2 Paginate

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

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

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

  1. <!DOCTYPE html> 
  2. <html> 
  3. <head> 
  4.   <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="external nofollow" rel="external nofollow" > 
  5. </head> 
  6. <body> 
  7. <div class="container"
  8.   <h1>Posts</h1> 
  9.   <hr> 
  10.   <ul> 
  11.     @foreach($posts as $post
  12.       <li> 
  13.         <h4>{{ $post->title }}</h4> 
  14.         <p>{{ str_limit($post->content) }}</p> 
  15.       </li> 
  16.     @endforeach 
  17.   </ul> 
  18.   {!! $posts->render() !!} 
  19. </div> 
  20. </body> 
  21. </html>

Tags: Laravel5.1分页

分享到: