ThinkPHP3.2.3学习笔记6---专题---数据分页
2016-06-13 13:49
387 查看
http://document.thinkphp.cn/manual_3_2.html#data_page
thinkphp3.2.3中分类的功能调用的文件$THINKPHP_HOME/ThinkPHP/Library/Think/Page.class.php,这个文件只有150行左右,不复杂,比较容易看懂,方便自己修改,也可以在此基础上进行新功能的扩展。
控制器
$THINKPHP_HOME/Application/Home/Controller/PageController.class.php
模型$THINKPHP_HOME/Application/Home/Model/PageModel.class.php
模板$THINKPHP_HOME/Application/Home/View/Page/page.html
在浏览器中分别输入以下两个网址进行测试,可以输出正确的结果 http://localhost:81/research/thinkphp_3.2.3_full/index.php/Home/Page/pageLimit http://localhost:81/research/thinkphp_3.2.3_full/index.php/Home/Page/pagePage
延伸阅读:
http://www.baidu.com/s?wd=thinkphp3.2.3%20分页
http://www.sogou.com/web?query=thinkphp3.2.3%20分页
https://www.so.com/index.php?q=thinkphp3.2.3%20分页
thinkphp3.2.3中分类的功能调用的文件$THINKPHP_HOME/ThinkPHP/Library/Think/Page.class.php,这个文件只有150行左右,不复杂,比较容易看懂,方便自己修改,也可以在此基础上进行新功能的扩展。
控制器
$THINKPHP_HOME/Application/Home/Controller/PageController.class.php
<?php namespace Home\Controller; use Think\Controller; class PageController extends Controller{ //注意,这里只能用D('User') 不能用 M('User'),因为这里是需要实例化某个具体的模型类User protected $userObj; public function getUserObj() { return $this->userObj = D('page'); } //第一种:利用Page类和limit方法进行分页 public function pageLimit(){ $this->userObj = $this->getUserObj(); $data = $this->userObj->pageLimit(); $list = $data['list']; $page = $data['page']; //var_dump($data); $this->assign('list', $list);// 赋值数据集 $this->assign('page', $page);// 赋值分页输出 $this->display('Page:page'); // 输出模板 } //第一种:利用Page类和page方法进行分页 public function pagePage(){ $this->userObj = $this->getUserObj(); $data = $this->userObj->pagePage(); $list = $data['list']; $page = $data['page']; //var_dump($data); $this->assign('list', $list);// 赋值数据集 $this->assign('page', $page);// 赋值分页输出 $this->display('Page:page'); // 输出模板 } } ?>
模型$THINKPHP_HOME/Application/Home/Model/PageModel.class.php
<?php namespace Home\Model; use Think\Model; class PageModel extends Model { protected $trueTableName = '99game_user'; protected $userObj; public function getUserObj() { return $this->userObj = M('User', '99game_'); } //第一种:利用Page类和limit方法进行分页 public function pageLimit() { $User = $this->getUserObj(); $count = $User->where('level=1')->count();// 查询满足要求的总记录数 $Page = new \Think\Page($count, 3);// 实例化分页类 传入总记录数和每页显示的记录数(3) //配置theme是用来设置分页要显示哪些数据项的,比如%HEADER%表示“共XX条记录” $Page->setConfig('theme', '%HEADER% %NOW_PAGE%/%TOTAL_PAGE% %FIRST% %UP_PAGE% %LINK_PAGE% %DOWN_PAGE% %END%'); $show = $Page->show();// 分页显示输出 // 进行分页数据查询 注意limit方法的参数要使用Page类的属性 $list = $User->where('level=1')->order('user_id desc')->limit($Page->firstRow.','.$Page->listRows)->select(); echo "sql: " . $User->_sql() . "\n"; return array('list' => $list, 'page' => $show); } //第一种:利用Page类和page方法进行分页 public function pagePage() { $User = $this->getUserObj(); // 实例化User对象 // 进行分页数据查询 注意page方法的参数的前面部分是当前的页数使用 $_GET[p]获取 $count = $User->where('level=1')->count();// 查询满足要求的总记录数 $Page = new \Think\Page($count, 3);// 实例化分页类 传入总记录数和每页显示的记录数 $show = $Page->show();// 分页显示输出 $list = $User->where('level=1')->order('user_id desc')->page($_GET['p'].',3')->select(); return array('list' => $list, 'page' => $show); } } ?>
模板$THINKPHP_HOME/Application/Home/View/Page/page.html
数据列表<br /> <volist name="list" id="data" key="k"> {$k} : {$key} : {$data.user_id} : {$data.email} : {$data.token}<br /> </volist> 分页数据<br /> {$page}
在浏览器中分别输入以下两个网址进行测试,可以输出正确的结果 http://localhost:81/research/thinkphp_3.2.3_full/index.php/Home/Page/pageLimit http://localhost:81/research/thinkphp_3.2.3_full/index.php/Home/Page/pagePage
延伸阅读:
http://www.baidu.com/s?wd=thinkphp3.2.3%20分页
http://www.sogou.com/web?query=thinkphp3.2.3%20分页
https://www.so.com/index.php?q=thinkphp3.2.3%20分页
相关文章推荐
- 分析技术和方法论营销理论知识框架,营销方面4P、用户使用行为、STP,管理方面5W2H、逻辑树、金字塔、生命周期
- ubuntu php imageMagick
- php解析html类库simple_html_dom
- PHP实现代码复用神器:trait
- make: *** [sapi/cli/php] Error 1 解决办法
- JFace TreeViewer使用 及内容提供器(IStructuredContentProvider)
- PHP中IP地址与整型数字互相转换详解
- PHP精确去掉引号里的内容;获取引号里的内容
- PHP精确去掉引号里的内容;获取引号里的内容
- phpmailer简单发送邮件的方法(附phpmailer源码下载)
- PHP array_key_exists检查键名或索引是否存在于数组中的实现方法
- PHP基础阶段内容
- PHP简单获取多个checkbox值的方法
- 浅谈PHP检查数组中是否存在某个值 in_array 函数
- Yii2.0 rules验证规则大全
- 深入理解PHP 数组之count 函数
- php汉字 字节数组转换
- PHP 数组遍历foreach语法结构及实例
- PHP+MySQL存储数据常见中文乱码问题小结
- php关闭错误提示