• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

ThinkPHP 分页函数的改造_php

php 搞代码 3年前 (2018-06-21) 142次浏览 已收录 0个评论

首先在创建好Thinkphp项目以后,打开根目录下的ThinkPHP/Common/functions.php(这里存放的是tp的公共函数)

 
添加如下代码
 
 

  1 function mypage($tot,$length){  2     $page=$_GET['p']?$_GET['p']:1;  3     $offset=($page-1)*$length;  4     $prevpage=$page-1;  5   6     $pages=ceil($tot/$length);  7   8     if($page>=$pages){  9         $nextpage=$pages; 10     }else{ 11         $nextpage=$page+1; 12     } 13  14     $limit="{$offset},{$length}"; 15  16     $show=" 17     <h4> 18         <a href='__SELF__/p/1'class='btn btn-warning btn-sm'>首页</a> 19         <a href='__SELF__/p/{$prevpage}' class='btn btn-warning btn-sm'>上一页</a>   20         <span>{$page}/{$pages}</span> 21         <a href='__SELF__/p/{$nextpage}' class='btn btn-warning btn-sm'>下一页</a> 22         <a href='__SELF__/p/{$pages}' class='btn btn-warning btn-sm'>末页</a> 23     </h4>"; 24     C('limit',$limit); 25     C('show',$show); 26 }

 
 
这样就定义好了分页函数。其中a连接的class可以自己定义,也可以不定义,之后在页面中通过css从父元素选中分页的html定义样式。
 
之后就是在Action中引用分页函数:(红色部分是关键代码)
 
 

 1         $goods=M('Goods'); 2         $count=$goods->where('is_pass=1 and is_self=1')->count(); 3         mypage($count,5); 4         $this->rows=$goods->where('is_pass=1 and is_self=1')->limit(C('limit'))->order('trade_num desc,price asc')->select(); 5         $this->assign('show',C('show')); 6         $this->display();

在tpl模板中引用:
 
1                         <div>
2                            <{$show}>
3                         </div>
因为我用的是bootstrap所以效果如下,样式可以自己通过css定义

欢迎大家阅读《ThinkPHP 分页函数的改造_php》,跪求各位点评,若觉得好的话请收藏本文,by 搞代码


喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址