Zend Framework实现留言本分页功能(附demo源码下载)


Posted in PHP onMarch 22, 2016

本文实例讲述了Zend Framework实现留言本分页功能的方法。分享给大家供大家参考,具体如下:

这里的分页功能运用了..Zend_Paginator这个组件来实现留言本分页...这里我也是参考PHPCHINA里一位PHPer写的这方面的教程

我实现的坏境以及项目的目录安排是在第三篇教程的基础上写的..如果有朋友不明白目录什么的安排..请用ZF1.6.0以上.请自己前面的文章里找一下这篇教程...我在这里就不多说什么了..谢谢..

第一步:在我们的控制器里面,也就是indexController.php里找到indexAction这个动作.我们可以看到..在这个动作里.我们相关教程只是取数据..我们现在把这个动作(Action)改写成如下形式..如下代码(有注解):

function indexAction()
{
$message=new message();//实例化数据库类
//取到所有留言getAllMessage,getAllReMessage
//二个方法在Model(Message.php)里定义的
//取到所有回复数据
$this->view->arrReviews=$message->getAllReMessage();
$page =1;//高置默认页
$numPerPage = 3;//每页显示的条数
if(isset($_GET['page']) && is_numeric($_GET['page'])){
   $page = $_GET['page'];//取到URL传过来的页数码
}
$array=$message->getAllMessage();//取到所有留言数据
$paginator = Zend_Paginator::factory($array);
$paginator->setCurrentPageNumber($page)
    ->setItemCountPerPage($numPerPage);
$this->view->paginator = $paginator;
echo $this->view->render('header.phtml');//显示模版头文件
echo $this->view->render('message/index.phtml');//显示模版
echo $this->view->render('footer.phtml');//显示模版脚文件
}

第二步:搞定我们要分页的样式,这里是以一个HTML设定分页的样式..在Zend Framework手册上.提供了三种分页显示的方式...大家可以自己去看一下他们的用法..其实很简单的..我运用了它的第一种.我们就在views/scripts/目录下建立一个新的模板页pagestyle.phtml..这个模板页是和留言本header.phtml以及footer.phtml同一级的..因为我们可能以后还会用到这个分页方式..所以我就放在这里..:pagestyle.phtml代码如下所示:(注意:在这里请在你的入口文件index.php定义一下你的WEB_ROOT为全局变量,它就是你网站根目录!):

if ($this->pageCount): ?>
class="paginationControl">
 if (isset($this->previous)): ?>
 "index/index/?page=
previous; ?> ">< 上一页 |
 else: ?>
 class="disabled">< 上一页 |
 endif; ?>
 foreach ($this->pagesInRange as $page): ?>
  if ($page != $this->current): ?>
"index/index/?page=
">$page; ?> |
  else: ?>   = $page; ?> |
  endif; ?> endforeach; ?>
 if (isset($this->next)): ?>
 "index/index/?page=
next; ?>">下一页 >
 else: ?>
 class="disabled">下一页 >
 endif; ?>
 endif; ?>

第三步:找到留言本显示页的index.pthml模板页,把原来:

foreach($this->messages as $message): ?>

这个换成

if (count($this->paginator)): ?>
 $i=1; foreach ($this->paginator as $message): ?>

之后.我们再在最后面加一分页的显示:

= $this->paginationControl($this->paginator,
'Elastic', 'pagestyle.phtml'); ?>

这样..我们就可以看到我们留言分页大功告成

完整实例代码点击此处本站下载。

希望本文所述对大家基于Zend Framework框架的PHP程序设计有所帮助。

PHP 相关文章推荐
php 操作excel文件的方法小结
Dec 31 PHP
PHP 巧用数组降低程序的时间复杂度
Jan 01 PHP
PHP把小数转成整数3种方法
Jun 30 PHP
11个PHPer必须要了解的编程规范
Sep 22 PHP
PHP+swoole实现简单多人在线聊天群发
Jan 19 PHP
LAMP环境使用Composer安装Laravel的方法
Mar 25 PHP
详解php curl带有csrf-token验证模拟提交方法
Apr 18 PHP
PHP递归遍历文件夹去除注释并压缩php源代码的方法示例
May 23 PHP
php异常处理捕获错误整理
Sep 23 PHP
对laravel的session获取与存取方法详解
Oct 08 PHP
PHP实现常用排序算法的方法
Feb 05 PHP
php字符串倒叙
Apr 01 PHP
Zend Framework实现具有基本功能的留言本(附demo源码下载)
Mar 22 #PHP
Zend Framework实现将session存储在memcache中的方法
Mar 22 #PHP
Zend Framework分页类用法详解
Mar 22 #PHP
Zend Framework生成验证码并实现验证码验证功能(附demo源码下载)
Mar 22 #PHP
PHP的Laravel框架中使用AdminLTE模板来编写网站后台界面
Mar 21 #PHP
深入解析PHP的Laravel框架中的event事件操作
Mar 21 #PHP
Android App中DrawerLayout抽屉效果的菜单编写实例
Mar 21 #PHP
You might like
如何使用PHP计算上一个月的今天
2013/05/23 PHP
WordPress中用于获取搜索表单的PHP函数使用解析
2016/01/05 PHP
[原创]php token使用与验证示例【测试可用】
2017/08/30 PHP
PHP的PDO大对象(LOBs)
2019/01/27 PHP
jQuery使用手册之三 CSS操作
2007/03/24 Javascript
jquery动态加载图片数据练习代码
2011/08/04 Javascript
jquery如何根据值设置默认的选中项
2014/03/17 Javascript
javascript弹出页面回传值的方法
2015/01/28 Javascript
jQuery实现冻结表头的方法
2015/03/09 Javascript
js检测判断日期大于多少天的方法
2015/05/04 Javascript
详解React Native网络请求fetch简单封装
2017/08/10 Javascript
python3中set(集合)的语法总结分享
2017/03/24 Python
Python生成MD5值的两种方法实例分析
2019/04/26 Python
Python中查看变量的类型内存地址所占字节的大小
2019/06/26 Python
详解Python是如何实现issubclass的
2019/07/24 Python
python PyAutoGUI 模拟鼠标键盘操作和截屏功能
2019/08/04 Python
Pytorch加载部分预训练模型的参数实例
2019/08/18 Python
python requests库的使用
2021/01/06 Python
Nike英国官网:Nike.com (UK)
2017/02/13 全球购物
英国在线定制百叶窗网站:Swift Direct Blinds
2020/02/25 全球购物
Ibatis如何调用存储过程
2015/05/15 面试题
集体婚礼证婚词
2014/01/13 职场文书
高三生物教学反思
2014/01/25 职场文书
财务管理职业生涯规划书
2014/02/26 职场文书
投标服务承诺书
2014/05/28 职场文书
品质标语大全
2014/06/21 职场文书
分公司总经理岗位职责
2014/07/30 职场文书
异地年检委托书范本
2014/09/24 职场文书
2014小学数学教师个人工作总结
2014/12/18 职场文书
财务会计岗位职责
2015/02/03 职场文书
生产现场禁烟通知
2015/04/23 职场文书
交通安全教育主题班会
2015/08/12 职场文书
辞职信怎么写?
2019/05/21 职场文书
利用Python第三方库实现预测NBA比赛结果
2021/06/21 Python
MySQL令人大跌眼镜的隐式转换
2021/08/23 MySQL
微信小程序 根据不同用户切换不同TabBar
2022/04/21 Javascript