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和MySql来与ODBC数据连接
Oct 09 PHP
php使用curl和正则表达式抓取网页数据示例
Apr 13 PHP
PHP中使用gettext解决国际化问题的例子(i18n)
Jun 13 PHP
php操作redis中的hash和zset类型数据的方法和代码例子
Jul 05 PHP
php密码生成类实例
Sep 24 PHP
PHP中的Streams详细介绍
Nov 12 PHP
php中smarty模板条件判断用法实例
Jun 11 PHP
yii2 数据库读写分离配置示例
Feb 10 PHP
PHP编程获取各个时间段具体时间的方法
May 26 PHP
利用 fsockopen() 函数开放端口扫描器的实例
Aug 19 PHP
PHP简单实现二维数组的矩阵转置操作示例
Nov 24 PHP
PHP Trait代码复用类与多继承实现方法详解
Jun 17 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中的多态性[译]
2011/08/02 PHP
PHP之生成GIF动画的实现方法
2013/06/07 PHP
PHP统计nginx访问日志中的搜索引擎抓取404链接页面路径
2014/06/30 PHP
Yii使用CLinkPager分页实例详解
2014/07/23 PHP
php生成短域名函数
2015/03/23 PHP
PHP插件PHPMailer发送邮件功能
2017/02/28 PHP
浅谈使用 Yii2 AssetBundle 中 $publishOptions 的正确姿势
2017/11/08 PHP
php实现session共享的实例方法
2019/09/19 PHP
动态创建样式表在各浏览器中的差异测试代码
2011/09/13 Javascript
getJSON调用后台json数据时函数被调用两次的原因猜想
2013/09/29 Javascript
jquery对象访问是什么及使用方法介绍
2016/05/03 Javascript
ThinkJS中如何使用MongoDB的CURD操作
2016/12/13 Javascript
JavaScript 函数节流详解及方法总结
2017/02/09 Javascript
react-native中ListView组件点击跳转的方法示例
2017/09/30 Javascript
详解js正则表达式验证时间格式xxxx-xx-xx形式
2018/02/09 Javascript
vue mounted组件的使用
2018/06/18 Javascript
小程序实现选择题选择效果
2018/11/04 Javascript
JavaScript偏函数与柯里化实例详解
2019/03/27 Javascript
HTML+JavaScript实现扫雷小游戏
2019/09/30 Javascript
JS操作字符串转数字的常见方法示例
2019/10/29 Javascript
[04:11]DOTA2上海特级锦标赛主赛事首日TOP10
2016/03/03 DOTA
Python解惑之整数比较详解
2017/04/24 Python
解决Python的str强转int时遇到的问题
2018/04/09 Python
python 使用poster模块进行http方式的文件传输到服务器的方法
2019/01/15 Python
通过python3实现投票功能代码实例
2019/09/26 Python
使用django和vue进行数据交互的方法步骤
2019/11/11 Python
浅谈python已知元素,获取元素索引(numpy,pandas)
2019/11/26 Python
美国波道夫·古德曼百货官网:Bergdorf Goodman
2017/11/07 全球购物
blueseventy官网:铁人三项和比赛泳衣
2021/02/06 全球购物
校园广播稿500字
2014/02/04 职场文书
信息技术培训感言
2014/03/06 职场文书
2014学雷锋活动总结
2014/03/09 职场文书
2014年业务员工作总结范文
2014/11/17 职场文书
2014年煤矿安全工作总结
2014/12/04 职场文书
nginx处理http请求实现过程解析
2021/03/31 Servers
Oracle创建只读账号的详细步骤
2021/06/07 Oracle