分页组件

jasongrimes/php-paginator

项目地址

https://github.com/jasongrimes/php-paginator

安装

  1. composer require "jasongrimes/paginator:^1.0.3"

使用

新建 app/controller/User.php

  1. <?php
  2. namespace app\controller;
  3. use support\Request;
  4. use JasonGrimes\Paginator;
  5. class User
  6. {
  7. /**
  8. * 用户列表
  9. */
  10. public function get(Request $request)
  11. {
  12. $total_items = 1000;
  13. $items_perPage = 50;
  14. $current_page = (int)$request->get('page', 1);
  15. $url_pattern = '/user/get?page=(:num)';
  16. $paginator = new Paginator($total_items, $items_perPage, $current_page, $url_pattern);
  17. return view('user/get', ['paginator' => $paginator]);
  18. }
  19. }

模板(php原生) 新建模版 app/view/user/get.html

  1. <html>
  2. <head>
  3. <!-- 内置支持 Bootstrap 分页样式 -->
  4. <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
  5. </head>
  6. <body>
  7. <?= $paginator;?>
  8. </body>
  9. </html>

模板(twig) 新建模版 app/view/user/get.html

  1. <html>
  2. <head>
  3. <!-- 内置支持 Bootstrap 分页样式 -->
  4. <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
  5. </head>
  6. <body>
  7. {% autoescape false %}
  8. {{paginator}}
  9. {% endautoescape %}
  10. </body>
  11. </html>

模板(blade) 新建模版 app/view/user/get.blade.php

  1. <html>
  2. <head>
  3. <!-- 内置支持 Bootstrap 分页样式 -->
  4. <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
  5. </head>
  6. <body>
  7. {!! $paginator !!}
  8. </body>
  9. </html>

模板(thinkphp) 新建模版 app/view/user/get.blade.php

  1. <html>
  2. <head>
  3. <!-- 内置支持 Bootstrap 分页样式 -->
  4. <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
  5. </head>
  6. <body>
  7. <?=$paginator?>
  8. </body>
  9. </html>

效果如下: 分页组件 - 图1

更多内容

访问 https://github.com/jasongrimes/php-paginator