TP3.2框架分页怎样实现,详细代码是什么
导读:在这篇文章中我们会学习到关于“TP3.2框架分页怎样实现,详细代码是什么”的知识,小编觉得挺不错的,现在分享给大家,也给大家做个参考,希望对大家学习或工作能有帮助。下面就请大家跟着小编的思路一起来学习一下吧。 本文实例讲述了TP...
在这篇文章中我们会学习到关于“TP3.2框架分页怎样实现,详细代码是什么”的知识,小编觉得挺不错的,现在分享给大家,也给大家做个参考,希望对大家学习或工作能有帮助。下面就请大家跟着小编的思路一起来学习一下吧。
本文实例讲述了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>
到此这篇关于“TP3.2框架分页怎样实现,详细代码是什么”的文章就介绍到这了,感谢各位的阅读,更多相关TP3.2框架分页怎样实现,详细代码是什么内容,欢迎关注网络资讯频道,小编将为大家输出更多高质量的实用文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: TP3.2框架分页怎样实现,详细代码是什么
本文地址: https://pptw.com/jishu/650850.html
