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新手上路(五)
Oct 09 PHP
swfupload 多文件上传实现代码
Aug 27 PHP
php写的带缓存数据功能的mysqli类
Sep 06 PHP
PHP UTF8中文字符截断函数代码
Sep 11 PHP
php实现文件下载简单示例(代码实现文件下载)
Mar 10 PHP
php 购物车完整实现代码
Jun 05 PHP
ThinkPHP 404页面的设置方法
Jan 14 PHP
PHP、Python和Javascript的装饰器模式对比
Feb 03 PHP
thinkPHP js文件中U方法不被解析问题的解决方法
Dec 05 PHP
PHP环形链表实现方法示例
Sep 15 PHP
快速解决PHP调用Word组件DCOM权限的问题
Dec 27 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
thinkphp中多表查询中防止数据重复的sql语句(必看)
2016/09/22 PHP
PHP 7.0新增加的特性介绍
2017/06/08 PHP
javascript字符串拼接的效率问题
2010/12/25 Javascript
jquery foreach使用示例
2013/09/12 Javascript
返回上一页并自动刷新的JavaScript代码
2014/02/19 Javascript
js实现网页倒计时、网站已运行时间功能的代码3例
2014/04/14 Javascript
javascript实现的一个带下拉框功能的文本框
2014/05/08 Javascript
Jquery性能优化详解
2014/05/15 Javascript
JavaScript实现的GBK、UTF8字符串实际长度计算函数
2014/08/27 Javascript
jQuery实现不断闪烁文字的方法
2015/05/15 Javascript
JavaScript判断用户名和密码不能为空的实现代码
2016/05/16 Javascript
vue之数据交互实例代码
2017/06/20 Javascript
javascript编程开发中取色器及封装$函数用法示例
2017/08/09 Javascript
详谈构造函数加括号与不加括号的区别
2017/10/26 Javascript
详解小程序如何改变onLoad的执行时机
2019/11/01 Javascript
antdesign-vue结合sortablejs实现两个table相互拖拽排序功能
2021/01/08 Vue.js
Python提取Linux内核源代码的目录结构实现方法
2016/06/24 Python
Python3学习笔记之列表方法示例详解
2017/10/06 Python
python并发和异步编程实例
2018/11/15 Python
python利用ffmpeg进行录制屏幕的方法
2019/01/10 Python
django之状态保持-使用redis存储session的例子
2019/07/28 Python
详解Pycharm出现out of memory的终极解决方法
2020/03/03 Python
python 提高开发效率的5个小技巧
2020/10/19 Python
Python通过字典映射函数实现switch
2020/11/06 Python
python 基于UDP协议套接字通信的实现
2021/01/22 Python
使用CSS3来实现滚动视差效果的教程
2015/08/24 HTML / CSS
CSS3实现王者匹配时的粒子动画效果
2019/04/12 HTML / CSS
HTML5标签与HTML4标签的区别示例介绍
2013/07/18 HTML / CSS
Bluebella法国官网:英国性感内衣品牌
2019/05/03 全球购物
教师个人剖析材料
2014/02/05 职场文书
社会实践活动总结范文
2014/07/03 职场文书
医疗专业毕业生求职信
2014/08/28 职场文书
婚礼嘉宾致辞
2015/07/28 职场文书
婚礼迎宾词大全
2015/08/10 职场文书
教师节作文之小学四年级
2019/09/03 职场文书
python源码剖析之PyObject详解
2021/05/18 Python