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中使用Sockets 从Usenet中获取文件
Jan 10 PHP
apache+php完美解决301重定向的两种方法
Jun 08 PHP
php的ajax简单实例
Feb 27 PHP
使用CodeIgniter的类库做图片上传
Jun 12 PHP
php使用parse_url和parse_str解析URL
Feb 22 PHP
php中动态变量用法实例
Jun 10 PHP
Yii数据模型中rules类验证器用法分析
Jul 15 PHP
Laravel4中的Validator验证扩展用法详解
Jul 26 PHP
如何使用php等比例缩放图片
Oct 12 PHP
基于php编程规范(详解)
Aug 17 PHP
PHP unlink与rmdir删除目录及目录下所有文件实例代码
Feb 07 PHP
PHP 对象接口简单实现方法示例
Apr 13 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
PHP has encountered an Access Violation
2007/01/15 PHP
简单的方法让你的后台登录更加安全(php中加session验证)
2012/08/22 PHP
PHP在引号前面添加反斜杠(PHP去除反斜杠)
2013/09/28 PHP
PHP在线调试执行的实现方法(附demo源码)
2016/04/28 PHP
Centos 6.5下PHP 5.3安装ffmpeg扩展的步骤详解
2017/03/02 PHP
PHP-CGI远程代码执行漏洞分析与防范
2017/05/07 PHP
PHP长网址与短网址的实现方法
2017/10/13 PHP
PHP开发api接口安全验证操作实例详解
2020/03/26 PHP
读jQuery之二(两种扩展)
2011/06/11 Javascript
基于jQuery实现模拟页面加载进度条
2013/04/01 Javascript
js 通过cookie实现刷新不变化树形菜单
2014/10/30 Javascript
jQuery中insertBefore()方法用法实例
2015/01/08 Javascript
值得收藏的vuejs安装教程
2017/11/21 Javascript
jquery点击回车键实现登录效果并默认焦点的方法
2018/03/09 jQuery
vue-cli 2.*中导入公共less文件的方法步骤
2018/11/22 Javascript
jquery拖拽自动排序插件使用方法详解
2020/07/20 jQuery
JavaScript变量作用域及内存问题实例分析
2019/06/10 Javascript
websocket4.0+typescript 实现热更新的方法
2019/08/14 Javascript
javascript设计模式 ? 抽象工厂模式原理与应用实例分析
2020/04/09 Javascript
Vue js with语句原理及用法解析
2020/09/03 Javascript
vue实现点击按钮“查看详情”弹窗展示详情列表操作
2020/09/09 Javascript
[01:00:14]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs TNC 第三场
2018/04/10 DOTA
Linux下编译安装MySQL-Python教程
2015/02/02 Python
python函数的5种参数详解
2017/02/24 Python
Python numpy 常用函数总结
2017/12/07 Python
基于Django的乐观锁与悲观锁解决订单并发问题详解
2019/07/31 Python
使用浏览器访问python写的服务器程序
2019/10/10 Python
Tensorflow 自定义loss的情况下初始化部分变量方式
2020/01/06 Python
Python项目跨域问题解决方案
2020/06/22 Python
Python django框架 web端视频加密的实例详解
2020/11/20 Python
使用html2canvas将页面转成图并使用用canvas2image下载
2019/04/04 HTML / CSS
锐步美国官方网站:Reebok美国
2018/01/10 全球购物
校三好学生主要事迹
2014/01/11 职场文书
党风廉政承诺书
2014/03/27 职场文书
中学学校门卫岗位职责
2014/08/15 职场文书
《彼得与狼》教学反思
2016/02/20 职场文书