thinkPHP3怎样实现分页,代码是什么
Admin 2022-09-23 群英技术资讯 500 次浏览
本文实例讲述了TP3.2框架分页相关实现方法。分享给大家供大家参考,具体如下:
需要用到分页的继承这个控制器即可
<?php namespace Home\Controller; use Think\Controller; class BaseController extends Controller { /** * 基础分页的相同代码封装,使前台的代码更少 * @param $count 要分页的总记录数 * @param int $pagesize 每页查询条数 * @return \Think\Page */ function getpage($count, $pagesize = 20,$waps) { $Page = new \Think\Page($count,$pagesize,$waps); $Page->rollPage = 5; $Page->setConfig('header', '<li class="rows">第<b>%NOW_PAGE%</b>页/共<b>%TOTAL_PAGE%</b>页</li>'); $Page->setConfig('prev', '上一页'); $Page->setConfig('next', '下一页'); $Page->setConfig('last', '末页'); $Page->setConfig('first', '首页'); $Page->setConfig('theme', '%FIRST%%UP_PAGE%%LINK_PAGE%%DOWN_PAGE%%END%%HEADER%'); $Page->lastSuffix = false;//最后一页不显示为总页数 return $Page; } /** * @param $model 模型 * @param $map where条件 * @param $find 0 select 1=find 2=关联表 * @return $list 数组 */ function _select($model,$map,$order='',$field="",$find="0",$limit=20,$join,$param){ $waps = $param; if(empty($model) && empty($map)){ $this->list = array(); }else{ if($find == 0){ $count = $model->where($map)->count(); $Page = $this->getpage($count,$limit,$waps); if($Page->firstRow < 0){ $Page->firstRow = 0; } if($order != ""){ $this->list = $model->field($field)->where($map)->order($order)->limit($Page->firstRow. ',' . $Page->listRows)->select(); }else{ $this->list = $model->field($field)->where($map)->limit($Page->firstRow. ',' . $Page->listRows)->select(); } $this->page = $Page->show(); }else if($find == 1){ $this->list = $model->field($field)->where($map)->find(); }else if($find == 3){ $count = $model->alias("t1")->join($join)->where($map)->count(); $Page = $this->getpage($count,$limit,$waps); if($Page->firstRow < 0){ $Page->firstRow = 0; } if($order != ""){ $this->list = $model->alias("t1")->join($join)->field($field)->where($map)->order($order)->limit($Page->firstRow. ',' . $Page->listRows)->select(); }else{ $this->list = $model->alias("t1")->join($join)->field($field)->where($map)->limit($Page->firstRow. ',' . $Page->listRows)->select(); } $this->page = $Page->show(); }else if($find == 4){ if($order != ""){ $this->list = $model->alias("t1")->join($join)->field($field)->where($map)->order($order)->limit($Page->firstRow. ',' . $Page->listRows)->find(); }else{ $this->list = $model->alias("t1")->join($join)->field($field)->where($map)->limit($Page->firstRow. ',' . $Page->listRows)->find(); } } $this->limit = $Page->firstRow; $this->assign("listinfo",$this->list); $this->assign("page",$this->page); return($this->list); } } }
控制器中先继承后使用。
if($this->txt_keyword){ $where['m_title'] = array('like','%'.$this->txt_keyword.'%'); } $where['status'] = $param['status'] = 0; $this->_select($this->information_mod,$where,'','*',0,10,'',$param); $this->display();
模板中
<div class="hg_page" > {$page} </div>
分页样式
<style> .hg_page .first, .hg_page .current, .hg_page .num, .hg_page .next, .hg_page .end, .hg_page .rows, .hg_page .prev{ float: left; height: 37px; padding: 0 15px; border: 1px solid #e5e5e5; line-height: 37px; margin: 0 3px; } .hg_page{ text-align: center; height: 37px; margin:0 auto; margin-top: 30px; margin-bottom: 20px; width: 800px; } </style>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
在本篇文章里小编给大家整理的是关于PHP7创建COOKIE和销毁COOKIE的实例方法,有需要的朋友们可以参考下。
PHP自定义加密函数有哪些?在做项目的时候,我们可能会需要使用到加密函数,接下来小编就给大家分享一些PHP自定义加密函数,都是比较实用的,希望大家阅读完这篇文章能有收获,感兴趣的朋友就继续往下看吧。
mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ]);该函数返回一个字符串或者数组。该字符串或数组是将 subject 中全部的 search 都被 replace 替换之后的结果。返回值和前三个参数都可以为字符串或数组二者其一。第四个参数指定一个变量名为替换次数。
laravel是一个由Taylor Otwell所创建,免费的开源PHP Web框架;其源代码托管于GitHub,许可条款为MIT许可证;Laravel的特色包括支持用户身份验证和许可、具有模块化的包系统且有专属的包库等。
这篇文章主要介绍了Thinkphp5.0 框架使用模型Model添加、更新、删除数据操作,结合实例形式详细分析了thinkPHP5.0框架Model模型操作数据的添加、更新、删除的各种常用技巧与操作注意事项,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008