Zend Framework入门教程之Zend_View组件用法示例


Posted in PHP onDecember 09, 2016

本文实例讲述了Zend Framework入门教程之Zend_View组件用法。分享给大家供大家参考,具体如下:

Zend_View组件可以实现MVC模式中视图部分的代码与Model和Controller部分的分离。

使用步骤:首先在Controller中建立一个Zend_View实例,并将需要的变量传递给它;之后,Controller通知Zend_View显示一个特定的视图,

生成View输出的内容。

实例之控制器代码脚本:

<?php
//使用模型来获取书籍作者和标题相关数据
$data = array(
  array(
    'author'=>'曹雪芹',
    'title'=>'红楼梦'
  ),
  array(
    'author'=>'罗贯中',
    'title'=>'三国演义'
  ),
  array(
    'author'=>'吴承恩',
    'title'=>'西游记'
  ),
  array(
    'author'=>'施耐庵',
    'title'=>'水浒传'
  )
);
//传递数据给Zend_View类的实例
require_once 'Zend/Loader.php';
Zend_Loader::loadClass('Zend_View');
$view = new Zend_View();
$view->books = $data;
$view->setScriptPath('./');
echo $view->render('4-2.php');

视图脚本代码(4-2.php中的内容):

<?php if($this->books):?>
<table>
  <tr>
    <th>作者</th>
    <th>标题</th>
  </tr>
  <?php foreach($this->books as $key=>$val):?>
  <tr>
    <td><?php echo $this->escape($val['author'])?></td>
    <td><?php echo $this->escape($val['title'])?></td>
  </tr>
  <?php endforeach;?>
  </table>
<?php else:?>
<p>没有需要的书目</p>
<?php endif;?>

执行结果:

作者   标题
曹雪芹   红楼梦
罗贯中   三国演义
吴承恩   西游记
施耐庵   水浒传

小结(实践感受):

这个案例,并没有什么很大的结构,Zend_View相当于一个插件,可以灵活的调用。Zend框架中的内容并不需要一定在很大的架构中使用。

MVC也并不那么呆板,它只是一种思想。这里的M层就是一组数组。真实开发过程中,就应该从数据库读取信息。视图层目录经过$view->setScriptPath('./');设置成了当前目录下。

这样就可以直接调用到当前目录下的文件4-2.php了。视图层接收到数据之后,进行一定的处理。

Zend_View的主要功能就是把数据,从控制器层传入到视图层。

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

PHP 相关文章推荐
谈谈PHP语法(4)
Oct 09 PHP
一个捕获函数输出的函数
Feb 14 PHP
php 无限级缓存的类的扩展
Mar 16 PHP
php设计模式 Composite (组合模式)
Jun 26 PHP
php去除重复字的实现代码
Sep 16 PHP
php防止SQL注入详解及防范
Nov 12 PHP
ini_set的用法介绍
Jan 07 PHP
php实现天干地支计算器示例
Mar 14 PHP
PHP生成短网址的3种方法代码实例
Jul 08 PHP
PHP常用技术文之文件操作和目录操作总结
Sep 27 PHP
深入解析PHP的Yii框架中的缓存功能
Mar 29 PHP
PHP中的empty、isset、isnull的区别与使用实例
Mar 22 PHP
Zend Framework处理Json数据方法详解
Dec 09 #PHP
Zend Framework使用Zend_Loader组件动态加载文件和类用法详解
Dec 09 #PHP
PHP 根据key 给二维数组分组
Dec 09 #PHP
Zend Framework入门教程之Zend_Registry组件用法详解
Dec 09 #PHP
Zend Framework入门教程之Zend_Config组件用法详解
Dec 09 #PHP
Zend Framework过滤器Zend_Filter用法详解
Dec 09 #PHP
Zend Framework实现自定义过滤器的方法
Dec 09 #PHP
You might like
《破坏领主》销量已超100万 未来将继续开发新内容
2020/03/08 其他游戏
超人钢铁侠联手合作?美漫作家呼吁DC漫威合作联动以抵抗疫情
2020/04/09 欧美动漫
在同一窗体中使用PHP来处理多个提交任务
2006/10/09 PHP
用ODBC的分页显示
2006/10/09 PHP
php trim 去除空字符的定义与语法介绍
2010/05/31 PHP
php模拟post行为代码总结(POST方式不是绝对安全)
2012/02/22 PHP
浅析php工厂模式
2014/11/25 PHP
PHP开发框架laravel安装与配置教程
2015/03/13 PHP
PHP格式化MYSQL返回float类型的方法
2016/03/30 PHP
php从数据库中读取特定的行(实例)
2017/06/02 PHP
JQuery 学习笔记 选择器之二
2009/07/23 Javascript
extJs 文本框后面加上说明文字+下拉列表选中值后触发事件
2009/11/27 Javascript
offsetParent 算法分析
2010/04/05 Javascript
优化Node.js Web应用运行速度的10个技巧
2014/09/03 Javascript
js创建jsonArray传输至后台及后台全面解析
2016/04/11 Javascript
详解Angular之constructor和ngOnInit差异及适用场景
2017/06/22 Javascript
详解Js里的for…in和for…of的用法
2019/03/28 Javascript
详解express使用vue-router的history踩坑
2019/06/05 Javascript
如何给element添加一个抽屉组件的方法步骤
2019/07/14 Javascript
Nuxt页面级缓存的实现
2020/03/09 Javascript
微信小程序实现带放大效果的轮播图
2020/05/26 Javascript
Javascript实现打鼓效果
2021/01/29 Javascript
1分钟快速生成用于网页内容提取的xslt
2018/02/23 Python
浅谈python的深浅拷贝以及fromkeys的用法
2019/03/08 Python
Python socket连接中的粘包、精确传输问题实例分析
2020/03/24 Python
CSS Grid布局教程之浏览器开启CSS Grid Layout汇总
2014/12/30 HTML / CSS
html5 音乐播放器 audio 标签使用概述
2013/07/15 HTML / CSS
Java中实现多态的机制是什么?
2014/12/07 面试题
类如何去实现接口
2013/12/19 面试题
应届生.NET方向面试题
2015/05/23 面试题
干部行政关系介绍信
2014/01/17 职场文书
市优秀教师事迹材料
2014/02/05 职场文书
优秀员工推荐信
2014/05/10 职场文书
教师节感谢信
2015/01/22 职场文书
户外活动总结
2015/02/04 职场文书
党务工作者主要事迹材料
2015/11/03 职场文书