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 将图片按创建时间进行分类存储的实现代码
Jan 05 PHP
PHP基本语法总结
Sep 06 PHP
CentOS 6.3下安装PHP xcache扩展模块笔记
Sep 10 PHP
php实现粘贴截图并完成上传功能
May 17 PHP
PHP输出缓冲控制Output Control系列函数详解
Jul 02 PHP
thinkPHP下ueditor的使用方法详解
Dec 26 PHP
php 魔术常量详解及实例代码
Dec 04 PHP
用PHP的socket实现客户端到服务端的通信实例详解
Feb 04 PHP
解决Laravel blade模板转义html标签的问题
Sep 03 PHP
php 使用expat方式解析xml文件操作示例
Nov 26 PHP
php封装的page分页类完整实例代码
Feb 01 PHP
PHP常量及变量区别原理详解
Aug 14 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
通过PHP CLI实现简单的数据库实时监控调度
2009/07/01 PHP
《PHP编程最快明白》第六讲:Mysql数据库操作
2010/11/01 PHP
php设计模式 Prototype (原型模式)代码
2011/06/26 PHP
无法载入 mcrypt 扩展,请检查 PHP 配置终极解决方案
2011/07/18 PHP
通过dbi使用perl连接mysql数据库的方法
2014/04/16 PHP
解决在laravel中leftjoin带条件查询没有返回右表为NULL的问题
2019/10/15 PHP
Yii框架getter与setter方法功能与用法分析
2019/10/22 PHP
详细分析PHP 命名空间(namespace)
2020/06/30 PHP
基于Jquery的动态添加控件并取值的实现代码
2010/09/24 Javascript
Array的push与unshift方法性能比较分析
2011/03/05 Javascript
DOM基础教程之模型中的模型节点
2015/01/19 Javascript
JQuery复制DOM节点的方法
2015/06/11 Javascript
jQuery EasyUI 布局之动态添加tabs标签页
2015/11/18 Javascript
jQuery获取复选框被选中数量及判断选择值的方法详解
2016/05/25 Javascript
AngularJS入门示例之Hello World详解
2017/01/04 Javascript
js实现分页功能
2017/05/24 Javascript
详解利用 Vue.js 实现前后端分离的RBAC角色权限管理
2017/09/15 Javascript
解决vue 界面在苹果手机上滑动点击事件等卡顿问题
2018/11/27 Javascript
关于vue组件事件属性穿透详解
2019/10/28 Javascript
详解React路由传参方法汇总记录
2020/11/29 Javascript
Vue实现随机验证码功能
2020/12/29 Vue.js
PyQt5每天必学之组合框
2018/04/20 Python
打包python 加icon 去掉cmd黑窗口方法
2019/06/24 Python
python3获取当前目录的实现方法
2019/07/29 Python
python中使用while循环的实例
2019/08/05 Python
Python 复平面绘图实例
2019/11/21 Python
新手学python应该下哪个版本
2020/06/11 Python
英国No.1文具和办公用品在线:Euroffice
2016/09/21 全球购物
单位创先争优活动方案
2014/01/26 职场文书
供应链金融服务方案
2014/05/25 职场文书
教师党的群众路线对照检查材料
2014/09/24 职场文书
2019年健身俱乐部的创业计划书
2019/08/26 职场文书
职场:企业印章管理制度(模板)
2019/10/18 职场文书
selenium.webdriver中add_argument方法常用参数表
2021/04/08 Python
Matlab如何实现矩阵复制扩充
2021/06/02 Python
MySQL之MyISAM存储引擎的非聚簇索引详解
2022/03/03 MySQL