php 分页类
<?php
/**本程序文件對(duì)分頁(yè)程序進(jìn)行了封裝*
*/class Page_Link
{var $page_max = 10; //一組頁(yè)碼的最大數(shù)var $page_num = 10; //總頁(yè)數(shù)var $length = 20; //一頁(yè)的數(shù)據(jù)條數(shù)var $isNextPage = true;var $isFirstPage = false;function Calculation_Page_Num( $total ){$this->page_num = ceil( $total / $this->length );return $this->page_num;}function Calculation_Min_Max( $act_page = 1 ){// 定義左右偏移量$py_left = 0;$py_right = 0;// 定義左右邊界$bj_left = 0;$bj_right = 0;// 定義滾動(dòng)區(qū)間邊界$gd_left = 0;$gd_right = 0;// 判斷是否需要分組if ( ( $this->page_num - $this->page_max ) <= 0 ){// 不需要分組$bj_left = 1;$bj_right = $this->page_num;}else{// 要進(jìn)行分組// 判斷容量的奇偶$tmp = $this->page_max % 2;if ( $tmp === 1 ){// 奇數(shù)$py_left = $py_right = ( $this->page_max - 1 ) / 2;}else{// 偶數(shù)$py_left = $this->page_max / 2 - 1;$py_right = $this->page_max / 2;}// 計(jì)算滾動(dòng)區(qū)間$gd_left = 1 + $py_left;$gd_right = $this->page_num - $py_right;// 判斷當(dāng)前頁(yè)是否落入了滾動(dòng)區(qū)間if ( $act_page >= $gd_left && $act_page <= $gd_right ){// 區(qū)間內(nèi)$bj_left = $act_page - $py_left;$bj_right = $act_page + $py_right;}else{// 區(qū)間外if ( ( $act_page - $py_left ) <= 1 ){// 左側(cè)固定區(qū)間$bj_left = 1;$bj_right = $this->page_max;}else{$bj_left = $this->page_num - $this->page_max + 1;$bj_right = $this->page_num;}}}$res = array();$res['min'] = $bj_left;$res['max'] = $bj_right;return $res;}// 主方法
? ? ?/*
? ? ?* $total 數(shù)據(jù)總數(shù)
? ? ?* $act_page 當(dāng)前頁(yè)
? ? ?* $url 跳轉(zhuǎn)url
? ? ?* $param 頁(yè)碼參數(shù)
? ? ?*/
調(diào)用
//分頁(yè) $page=$_GET["p"]; $num=5; include "class.page.php"; $rs_total = $cls_news->get_news_count($classid);//數(shù)據(jù)總數(shù) $total_page = ceil($rs_total / $list_news_count);//總頁(yè)數(shù)$page_cls = new Page_Link(); $page_cls->length = $num;//每頁(yè)條數(shù) $url = "http://localhost:8001/list.php"; $page_arr = $page_cls->make_page($rs_total,$page,$url,"p");$fenye=""; foreach ($page_arr as $v){$v["url"]=$v["url"]==""?"javascript:;":$v["url"];if ($v["name"]=="Previous"){$fenye .="<a href='{$v["url"]}' class='listPrev'>{$v["name"]}</a>";}elseif($v["name"]=="Next"){$fenye .="<a href='{$v["url"]}' class='listNext'>{$v["name"]}</a>";}else{$fenye .="<a href='{$v["url"]}'>{$v["name"]}</a>";}} echo $fenye;?
轉(zhuǎn)載于:https://www.cnblogs.com/wangxusummer/p/4149243.html
總結(jié)
- 上一篇: LA 2402 (枚举) Fishnet
- 下一篇: 最新微信公众平台js sdk整合PHP版