Zend Framework基本页面布局分析


Posted in PHP onMarch 19, 2016

本文实例讲述了Zend Framework基本页面布局方法。分享给大家供大家参考,具体如下:

Zend Framework 的页面布局模块——Zend_Layout——既可以跟 MVC 一起使用,也可以单独使用。本文只讨论与 MVC 一起使用的情况。

1、布局脚本

在 application/views 下创建一个 layouts 的文件夹。主布局脚本 layout.phtml 代码如下:

<?php echo $this->doctype('XHTML1_STRICT') ?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php echo $this->headTitle() ?>
<?php
$this->headLink()->appendStylesheet("/styles/main.css");
// add more links ...
?>
<?php echo $this->headLink() ?>
</head>
<body>
<div id="header">
<?php echo $this->partial('header.phtml') ?>
</div>
<table>
<tr>
<td valign=top>
<div id="leftcolumn">
<?php echo $this->partial('leftcolumn.phtml') ?>
</div>
</td>
<td valign=top>
<div id="content">
<?php echo $this->layout()->content ?>
</div>
</td>
</tr>
</table>
<div id="footer">
<?php echo $this->partial('footer.phtml') ?>
</div>
</body>
</html>

除了 layout.phtml 之外,还需要编写 header.phtml,leftcolumn.phtml,footer.phtml,以及 main.css 等文件。
Zend Framework 的文档中用一个视图表示了页面布局的应用。

Zend Framework基本页面布局分析

2、设置页面布局

在 MVC 下设置页面布局非常简单,编辑 html/index.php,加入下面两行代码:

/** Setup layout */
require_once 'Zend/Layout.php';
Zend_Layout::startMvc($rootPath . '/application/views/layouts');

注意:在启动页面布局后,要调整已有的各个页面,把不需要的 html 元素,如<header> <title> <body> 等去掉。另外,可以通过 $this->headTitle() 来设置页面的题头。

改变页面的布局也很简单,只需在控制器中用下面的代码即可:

$this->_helper->layout->setLayout('new_layout');

如果一个控制器所有动作都使用同一个页面布局,可以通过控制器的初始化函数来设置:

public function init() {
parent::init();
$this->_helper->layout->setLayout('new_layout'); 
}

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

PHP 相关文章推荐
用PHP和ACCESS写聊天室(七)
Oct 09 PHP
深入php多态的实现详解
Jun 09 PHP
php echo, print, print_r, sprintf, var_dump, var_expor的使用区别
Jun 20 PHP
PHP连接和操作MySQL数据库基础教程
Sep 29 PHP
PHP中的命名空间相关概念浅析
Jan 22 PHP
PHP识别二维码的方法(php-zbarcode安装与使用)
Jul 07 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
Aug 28 PHP
PHP排序算法之基数排序(Radix Sort)实例详解
Apr 21 PHP
PHP7内核之Reference详解
Mar 14 PHP
PHP实现提高SESSION响应速度的几种方法详解
Aug 09 PHP
微信小程序发送订阅消息的方法(php 为例)
Oct 30 PHP
在phpstudy集成环境下的nginx服务器下配置url重写
Dec 02 PHP
Zend Framework连接Mysql数据库实例分析
Mar 19 #PHP
Zend Framework+smarty用法实例详解
Mar 19 #PHP
ThinkPHP使用Smarty第三方插件方法小结
Mar 19 #PHP
smarty学习笔记之常见代码段用法总结
Mar 19 #PHP
FleaPHP框架数据库查询条件($conditions)写法总结
Mar 19 #PHP
PHP指定截取字符串中的中英文或数字字符的实例分享
Mar 18 #PHP
详解PHP的Yii框架中组件行为的属性注入和方法注入
Mar 18 #PHP
You might like
WordPress中对访客评论功能的一些优化方法
2015/11/24 PHP
PHP中Array相关函数简介
2016/07/03 PHP
php结合md5的加密解密算法实例
2016/09/30 PHP
PHP结合Ueditor并修改图片上传路径
2016/10/16 PHP
javascript Keycode对照表
2009/10/24 Javascript
页面中iframe相互传值传参
2009/12/13 Javascript
Javascript 匿名函数及其代码模式原理
2010/03/19 Javascript
jquery 图片轮换效果
2010/07/29 Javascript
js日期、星座的级联显示代码
2014/01/23 Javascript
基于jquery实现select选择框内容左右移动添加删除代码分享
2015/08/25 Javascript
jQuery技巧之让任何组件都支持类似DOM的事件管理
2016/04/05 Javascript
深入理解逻辑表达式的用法 与或非的用法
2016/06/06 Javascript
简单实现js间歇或无缝滚动效果
2016/06/29 Javascript
5种JavaScript脚本加载的方式
2017/01/16 Javascript
JS实现基于拖拽改变物体大小的方法
2018/01/23 Javascript
使用微信SDK自定义分享的方法
2019/07/03 Javascript
layui table设置某一行的字体颜色方法
2019/09/05 Javascript
小程序实现左滑删除的效果的实例代码
2020/10/19 Javascript
JavaScript 防抖和节流遇见的奇怪问题及解决
2020/11/20 Javascript
python简单实现旋转图片的方法
2015/05/30 Python
Python正则表达式教程之一:基础篇
2017/03/02 Python
Python基于pycrypto实现的AES加密和解密算法示例
2018/04/10 Python
Pycharm 操作Django Model的简单运用方法
2018/05/23 Python
Python中的上下文管理器相关知识详解
2019/09/19 Python
TensorFlow使用Graph的基本操作的实现
2020/04/22 Python
python tqdm实现进度条的示例代码
2020/11/10 Python
Python新建项目自动添加介绍和utf-8编码的方法
2020/12/26 Python
CSS3 圆角效果
2009/07/15 HTML / CSS
10分钟理解CSS3 Grid布局
2018/12/20 HTML / CSS
为什么需要版本控制
2016/10/28 面试题
我的梦想演讲稿
2014/04/30 职场文书
质检员工作总结2015
2015/04/25 职场文书
个人售房合同协议书
2016/03/21 职场文书
公司财务制度:成本管理控制制度模板
2019/11/19 职场文书
MySQL 角色(role)功能介绍
2021/04/24 MySQL
Vue全家桶入门基础教程
2021/05/14 Vue.js