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 相关文章推荐
超级简单的发送邮件程序
Oct 09 PHP
php中$_SERVER[PHP_SELF] 和 $_SERVER[SCRIPT_NAME]之间的区别
Sep 05 PHP
PHP sprintf() 函数的应用(定义和用法)
Jun 29 PHP
web站点获取用户IP的安全方法 HTTP_X_FORWARDED_FOR检验
Jun 01 PHP
如何设置mysql允许外网访问
Jun 04 PHP
浅析Mysql 数据回滚错误的解决方法
Aug 05 PHP
PHP中date与gmdate的区别及默认时区设置
May 12 PHP
CI(CodeIgniter)框架配置
Jun 10 PHP
php中mail函数发送邮件失败的解决方法
Dec 24 PHP
Yii2中使用join、joinwith多表关联查询
Jun 30 PHP
Laravel 5.4因特殊字段太长导致migrations报错的解决
Oct 22 PHP
Thinkphp5+plupload实现的图片上传功能示例【支持实时预览】
May 08 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
全国FM电台频率大全 - 16 河南省
2020/03/11 无线电
PHP通用检测函数集合
2006/11/25 PHP
Discuz板块横排显示图片的实现方法
2007/05/28 PHP
UCenter 批量添加用户的php代码
2012/07/17 PHP
php检测网页是否被百度收录的函数代码
2013/10/09 PHP
PHP+jquery+ajax实现即时聊天功能实例
2014/12/23 PHP
javascript 构建一个xmlhttp对象池合理创建和使用xmlhttp对象
2010/01/15 Javascript
基于jquery的滚动新闻列表
2010/06/19 Javascript
JS数组的赋值介绍
2014/03/10 Javascript
js中把JSON字符串转换成JSON对象最好的方法
2014/03/21 Javascript
网站基于flash实现的Banner图切换效果代码
2014/10/14 Javascript
JQuery的Ajax中Post方法传递中文出现乱码的解决方法
2014/10/21 Javascript
JavaScript数据类型检测代码分享
2015/01/26 Javascript
浅谈jQuery中的事件
2015/03/23 Javascript
jquery插件NProgress.js制作网页加载进度条
2015/06/05 Javascript
javascript实现的字符串与十六进制表示字符串相互转换方法
2015/07/17 Javascript
jQuery+CSS实现的网页二级下滑菜单效果
2015/08/25 Javascript
两款JS脚本判断手机浏览器类型跳转WAP手机网站
2015/10/16 Javascript
JavaScript制作淘宝星级评分效果的思路
2020/06/23 Javascript
使用Bootstrap typeahead插件实现搜索框自动补全的方法
2016/07/07 Javascript
详解XMLHttpRequest(一)同步请求和异步请求
2016/09/14 Javascript
shiro授权的实现原理
2017/09/21 Javascript
用jquery获取select标签中选中的option值及文本的示例
2018/01/25 jQuery
VUE脚手架的下载和配置步骤详解
2019/04/01 Javascript
jquery轮播图插件使用方法详解
2020/07/31 jQuery
javascript实现时间日期的格式化的方法汇总
2020/08/06 Javascript
python使用PyGame播放Midi和Mp3文件的方法
2015/04/24 Python
修改 CentOS 6.x 上默认Python的方法
2019/09/06 Python
Django利用elasticsearch(搜索引擎)实现搜索功能
2020/11/26 Python
Java语言程序设计测试题判断题部分
2013/01/06 面试题
自考生毕业自我鉴定
2013/10/10 职场文书
高级方案规划工程师岗位职责
2013/11/29 职场文书
领导走群众路线整改措施思想汇报
2014/10/12 职场文书
2014年设计师工作总结
2014/11/25 职场文书
爱国主题班会教案
2015/08/14 职场文书
正确的理解和使用Django信号(Signals)
2021/04/14 Python