
PHP分页查询类编码应当怎样设定
2021-01-21 07:15
今日为大伙儿献上1段编码,这是1段php分页查询编码:
?php
//建立分页查询类
class Page {
private $_all_num; //数据信息总个数
private $_page_size; //每页显示信息几条数据信息
private $_page; //当今网页页面
private $_all_page; //总页码
private $_url; //网页页面详细地址
private $_limit; //数据信息库查寻句子
private $_sign; //详细地址标记
//阻拦器
public function __get($_key) {
return $this- $_key;
}
public function __construct($_all_num,$_page_size) {
$this- _all_num = $_all_num;
$this- _page_size = $_page_size;
$this- _all_page = ceil($this- _all_num / $this- _page_size);
$this- _page = $this- setPage();
$this- _url = $this- setUrl();
$this- _limit = 'LIMIT '.($this- _page * $this- _page_size - $this- _page_size).','.$this- _page_size;
}
//获得当今页码
private function setPage() {
if (!empty($_GET['page']) $_GET['page'] 0) {
if ($_GET['page'] = $this- _all_page) {
return ceil($_GET['page']);
} else {
return $this- _all_page;
}
} else {
return 1;
}
}
//获得详细地址
private function setUrl() {
$_url = $_SERVER['REQUEST_URI'];
if (!empty($_url)) {
$_par_url = parse_url($_url);
if (isset($_par_url['query'])) {
parse_str($_par_url['query'],$_arr);
if (isset($_arr['page'])) {
unset($_arr['page']);
}
if (!empty($_arr)) {
$_ = _build_query($_arr);
$_end_url = $_par_url['path'] . '?' . $_;
$this- _sign = '
} else {
$_end_url = $_par_url['path'];
$this- _sign = '?';
}
} else {
$_end_url = $_par_url['path'];
$this- _sign = '?';
}
}
return $_end_url;
}
//显示信息分页查询
public function numPage() {
$_num = '';
//前面
for ($i=1; $i $this- _page; $i++) {
if ($i 1) continue;
$_num .= " a href='".$this- _url. $this- _sign ."page=".$i."' ".$i." /a
}
//自身
$_num .= " a href='".$this- _url. $this- _sign ."page=".$this- _page."' ".$this- _page." /a
//后边
for ($i=$this- _page+1; $i =$this- _all_page; $i++) {
if ($i $this- _all_page) continue;
$_num .= " a href='".$this- _url. $this- _sign ."page=".$i."' ".$i." /a
}
return $_num;
}
}
?
大伙儿能够将上面1段编码拷贝到文字编写器中这样看的会舒适1点!下面讲1下实际流程:
1、建立1个分页查询类:class Page {};
2、获得必须显示信息数据信息的个数,而且纪录在Page类中,这里数据信息的个数根据数据信息去获得就不详尽说了!随后设定每页显示信息数据信息的条数!
3、获得当今网页页面详细地址!
这段编码大约意思便是当你的详细地址跟随?时,那末点一下分页查询就用 page=;当你的详细地址后边沒有后缀或仅有?page=,那末点一下分页查询就用?page=
4、获得当今页码
这里的页码务必是整数金额,因此能够用ceil这个涵数,还要留意客户的故意改动详细地址!
4、做分页查询元素,这里只是做1个简易的数据分页查询,更繁杂客户体验更好的,大伙儿能够自主拓展!
5、设定数据信息库库的查寻条数,也便是LIMIT;举个事例:例如我如今有10条数据信息,设定每页显示信息5条数据信息,那末
当客户点一下第1页时,LIMIT 0,5
当客户点一下第2页时,LIMIT 5,5
6、这段编码的启用:
$_page = new Page(10,5);
$_page- page();
上面的10是总的数据信息个数,5是你要想每页显示信息数据信息的个数,$_page- page()便是网页页面的分页查询,立即echo出来就行啦,留意你还得将Page类中的$_limit启用出来放到数据信息库查寻句子中,这样基础的php分页查询就出来啦!
此文章内容属于王业楼的本人blog原創,若要转载请注明出处:王业楼的本人blog ly89
扫描二维码分享到微信