手机版

PHP封装分页功能 实现文本分页和数字分页

时间:2021-09-09 来源:互联网 编辑:宝哥软件园 浏览:

最近,分页在项目中得到了应用。分页是一个经常使用的函数,所以它被封装成一个函数。

//Page packing/* * * $page type Page type Page type Page type 1是数字分页2是文本分页*可以将$pageTotal、$ Page、$total等数据作为参数传递,也可以将分页作为全局变量(推荐)*/Function Paging($ Page type){ Global $ Page Total、$ Page、$ Total;if($ PageType==1){ echo ' div id=' pagenum ';回声' ul ';for($ I=0;$ i $ pageTotal$ I){ if($ page==($ I ^ 1)){ echo ' lia href='blogf友. php?page='。($i 1)。'''.($i 1)。”/a/Li ';} else { echo ' lia href=友. php?page='。($i 1)。'''.($i 1)。”/a/Li ';} } echo '/ul ';echo '/div ';} else if($ PageType==2){ echo ' div id=' page text ';回声' ul ';回声“li”。$page。/'.$pageTotal。page |/Li ';回声“李有强壮”。共计美元。/strong成员|/Li ';//第一页if($page==1) {echo 'li第一页|/Li ';echo ' liPrevious |/Li ';} else {//$ _ server[' script _ name ']获取当前脚本名,便于移植。//还可以自定义常量,常量的值与脚本文件名echo' lia href=' ' '一致。$ _服务器['script _ name']。“主页/a |/Li”;echo 'lia href=' '。$_SERVER['SCRIPT_NAME']。Page='。($page-1)。“上一页/a |/Li”;}//最后一页if ($ page==$ pagetotal) {echo的下一页|/Li ';echo“Li最后一页|/Li”;} else { echo 'lia href=' '。$_SERVER['SCRIPT_NAME']'?Page='。($第1页)。”下一页/a |/Li ';echo 'lia href=' '。$_SERVER['SCRIPT_NAME']'?Page='。($pageTotal),”最后一页/a |/Li ';} echo '/ul ';echo '/div ';}}参数说明:

$pageTotal是总页数,$page是当前页,$total是从数据库获取的数据总数;

为简单起见,所有参数都被封装

//分页参数子打包/*** $sql一个可以获取数据总数的sql语句* $size显示的页数*/函数pageParam($sql,$size){ //将所有涉及的参数设置为全局变量//$一个页面从哪里开始//$总记录数$page $ page total pages Global $ page start,$ pagesize,$total,$ page,$ page total;$ pagesize=$ size//get total data $ total=MySQL _ num _ rows(query db($ SQL));//错误处理:首先判断if (isset ($ _ get ['page'])是否存在{//特定的page $ page=$ _ GET[' page '];//判断是否为空(0为空)/小于0/是否为数字if(empty($ page)| $ page 0 | |!is _ numeric($ page)){ $ page=1;} else { $ page=int val($ page);//舍入以防止小数位数}} else {//初始化并显示$page=1的第一页;}//如果($total==0) {//设置为1 $pageTotal=1,则数据库归零;} else {//分页的总页数(四舍五入)$ page total=ceil($ total/$ page size);}//页数大于总页数$ total fif($ page $ page total){ $ page=$ page total;}//当页面从某条记录开始时,$ page start=($ page-1)* $ page size;}参数解释:

$pagestart是当页面以记录开始时,$pagesize是每页显示的记录数

在使用中,首先调用pageParam,然后调用分页

/* * *第一条可以得到总数据的sql语句*第二条显示页数*/pageparam('从用户中选择userid ',2);Php //分页类型1是数字分页2是文本分页(2);通话地点根据具体情况选择,文字分页如下:

?Php //分页类型1是数字分页2是文本分页(1);这些数字细分如下:

风格会自我调整。

版权声明:PHP封装分页功能 实现文本分页和数字分页是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。