今天为大家献上一段代码,这是一段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)) {$_http = http_build_query($_arr);$_end_url = $_par_url['path'] . '?' . $_http;$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 class='me' 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、创建一个分页类:class Page {};2、获取需要显示数据的个数,并且记录在Page类中,这里数据的个数通过数据去获取就不详细说了!然后设置每页显示数据的条数!3、获取当前页面地址!这段代码大概意思就是当你的地址跟着?时,那么点击分页就用&page=;当你的地址后面没有后缀或者只有?page=,那么点击分页就用?page=4、获取当前页码这里的页码必须是整数,所以可以用ceil这个函数,还要注意用户的恶意修改地址!4、做分页元素,这里只是做一个简单的数字分页,更复杂用户体验更好的,大家可以自行扩展!5、设置数据库库的查询条数,也就是LIMIT;举个例子:比如我现在有10条数据,设置每页显示5条数据,那么当用户点击靠前页时,LIMIT 0,5当用户点击第二页时,LIMIT 5,56、这段代码的调用:$_page = new Page(10,5);$_page->page();上面的10是总的数据个数,5是你想要每页显示数据的个数,$_page->page()就是页面的分页,直接echo出来就行啦,注意你还得将Page类中的$_limit调用出来放到数据库查询语句中,这样基本的php分页就出来啦!此文章属于王业楼的个人博客原创,若要转载请注明出处:王业楼的个人博客 www.ly89.cn免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考;文章版权归原作者所有!本站作为信息内容发布平台,页面展示内容的目的在于传播更多信息;本站不提供任何相关服务,阁下应知本站所提供的内容不能做为操作依据。市场有风险,投资需谨慎!如本文内容影响到您的合法权益(含文章中内容、图片等),请及时联系本站,我们会及时删除处理。