本文实例讲述了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; ?> > class=disabled> 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相关内容感兴趣的读者可查看本站专题:《zend framework框架入门教程》、《php优秀开发框架总结》、《yii框架入门及常用技巧总结》、《thinkphp入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家基于zend framework框架的php程序设计有所帮助。