首页  >  文章  >  后端开发  >  简易分页种

简易分页种

WBOY
WBOY原创
2016-06-13 10:48:521222浏览

简易分页类
这是一个简单易用的分页类。只需在你原有的程序中加两句、改一句就可以了
先贴代码
paging.php

PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?phpclass Paging {  public static $count = 0;  public static $size = 0;  public static $page = 0;  static function prepare($sql, $pagesize=10) {    $page = isset($_GET['page']) ? $_GET['page'] : 1;    $pageon = ($page - 1) * $pagesize;    $sql = preg_replace('/select\s/i', '$0SQL_CALC_FOUND_ROWS ', $sql) . " limit $pageon, $pagesize";    $rs = mysql_query($sql);    $p = mysql_query('SELECT FOUND_ROWS()');    list(self::$count) = mysql_fetch_row($p);    self::$size = $pagesize;    self::$page = $page;    return $rs;  }  static function bar($tpl='') {    if(!$tpl) $tpl = '<a href=?reset>首页</a> <a href=?prve>上一页</a> <a href=?next>下一页</a> <a href=?end>尾页</a>';    $count = ceil(self::$count / self::$size);    $page = self::$page;    unset($_GET['page']);    $d = array(      'reset' => 1,      'prve' => $page > 1 ? $page - 1 : 1,      'next' => $page < $count ? $page + 1 : $count,      'end' => $count,    );    foreach($d as $k=>$v) {      $_GET['page'] = $v;      $tpl = str_replace($k, http_build_query($_GET), $tpl);    }    echo $tpl;  }}

通常你都有类似这样的语句
$sql =".....";
$rs = mysql_query($sql);

$rs = mysql_query("select ....");


你只需改作
include 'paging.php';
$rs = paging::prepare($sql, 每页行数);
在需要出现分页条的地方写入
paging::bar();

就可以了,非常简单!


------解决方案--------------------
前排拜模。
这样的写法还是第一次见到。
 $sql = preg_replace('/select\s/i', '$0SQL_CALC_FOUND_ROWS ', $sql) . " limit $pageon, $pagesize";

sql还用preg_replace……
------解决方案--------------------

谢谢分享,确实很方便 ,简单易用 。学习了。
------解决方案--------------------
探讨
这是一个简单易用的分页类。只需在你原有的程序中加两句、改一句就可以了
先贴代码
paging.php
PHP code
class Paging {
public static $count = 0;
public static $size = 0;
public static $page = 0;
static function prepare($sql, $……
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn