温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

php面向对象分页类代码

发布时间:2020-05-26 12:15:33 来源:网络 阅读:1027 作者:w0rdyyp 栏目:web开发
<?php
//自定义分页类
class Page
{
public $page=1; //当前页
public $pageSize=5; //页大小
public $maxPage=0; //最大页数
public $maxRows=0; //最大数据条
public $url =null; //访问的url地址
public $params=null; //url的参数条件
public function __construct($maxRows,$pageSize=5){
$this->maxRows = $maxRows;
$this->pageSize= $pageSize;
//获取当前页
$this->page = isset($_GET['p'])?$_GET['p']:1;
$this->getMaxPage();
$this->checkPage();
//获取和封装url地址
$this->url = $_SERVER["PHP_SELF"];
$this->getParams();
}
//获取分页信息
public function limit(){
return (($this->page-1)*$this->pageSize).",".$this->pageSize;
}
//计算分页中的最大页数
private function getMaxPage(){
$this->maxPage = ceil($this->maxRows/$this->pageSize);
}
//判断当前页数是否越界
private function checkPage(){
if($this->page>$this->maxPage){
$this->page = $this->maxPage;
}
if($this->page<1){
$this->page=1;
}
}
//封装url上搜索条件
private function getParams(){
foreach($_GET as $k=>$v){
if($k!="p" && !empty($v)){
$this->params.="&{$k}={$v}";
}
}
}
//生成分页HTML代码
public function show(){
$str = "";
$str.= "当前第{$this->page}/{$this->maxPage}页 共计{$this->maxRows}条 ";
$str.= " <a href='{$this->url}?p=1{$this->params}'>首页</a> ";
$str.= " <a href='{$this->url}?p=".($this->page-1)."{$this->params}'>上一页</a> ";
$str.= " <a href='{$this->url}?p=".($this->page+1)."{$this->params}'>下一页</a> ";
$str.= " <a href='{$this->url}?p={$this->maxPage}{$this->params}'>末页</a> ";
return $str;
}
}
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI