TP3.2框架分页相关实现方法分析
本文实例讲述了TP3.2框架分页相关实现方法。分享给大家供大家参考,具体如下:
需要用到分页的继承这个控制器即可
rollPage=5;
$Page->setConfig('header','第%NOW_PAGE%页/共%TOTAL_PAGE%页');
$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$mapwhere条件
*@param$find0select1=find2=关联表
*@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();
}elseif($find==1){
$this->list=$model->field($field)->where($map)->find();
}elseif($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();
}elseif($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();
模板中
{$page}
分页样式
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《ZendFrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。