用PHP制作静态网站的模板框架(一)


Posted in PHP onOctober 09, 2006

模板能够改善网站的结构。本文阐述如何通过PHP 4的一个新功能和模板类,在由大量静态HTML页面构成的网站中巧妙地运用模板控制页面布局。

提纲:

===================================

分离功能和布局

避免页面元素重复

静态网站的模板框架

===================================

分离功能和布局

首先我们来看看应用模板的两个主要目的:

分离功能(PHP)和布局(HTML)

避免页面元素重复

第一个目的是谈论得最多的目的,它设想的情形是:一组程序员编写用于生成页面内容的PHP脚本,同时另一组设计人员设计HTML和图形以控制页面的最终外观。分离功能和布局的基本思想就是使得这两组人能够各自编写和使用独立的一组文件:程序员只需关心那些只包含PHP代码的文件,无需关心页面的外观;而页面设计人员可以用自己最熟悉的可视化编辑器设计页面布局,无需担心破坏任何嵌入到页面的PHP代码。

如果你曾经看过几个关于PHP模板的教程,那么你应该已经明白模板的工作机制。考虑一个简单的页面局部:页面的上方是页头,左边是导航条,其余部分是内容区域。这种网站可以拥有如下模板文件:

<!-- main.htm -->
<html>
<head><title>模板示例</title></head>
<body>
<table><tr><td>{HEADER}</td></tr>
<tr><td>{LEFTNAV}</td><td>{CONTENT}</td></tr>
</table>
</body></html>

<!-- header.htm -->
<img src="sitelogo.jpg">

<!-- leftnav.htm -->
<br><a href="foo">Foo</a>
<br><a href="bar">Bar</a>

可以看出页面如何由这些模板构造而成:main模板控制着整个页面的布局;header模板和leftnav模板控制着页面的公共元素。花括号“{}”里面的标识符是内容占位符。使用模板最主要的好处在于界面设计者能够按照自己的意愿编辑这些文件,比如设置字体、修改颜色和图形,或者完全地改变页面的布局。界面设计者可以用任何普通HTML编辑器或者可视化工具编辑这些页面,因为这些文件都只包含HTML代码,没有任何PHP代码。

PHP 相关文章推荐
PHP 金额数字转换成英文
May 06 PHP
php的list()的一步操作给一组变量进行赋值的使用
May 18 PHP
浅析Dos下运行php.exe,出现没有找到php_mbstring.dll 错误的解决方法
Jun 29 PHP
又一个PHP实现的冒泡排序算法分享
Aug 21 PHP
php经典算法集锦
Nov 14 PHP
Laravel SQL语句记录方式(推荐)
May 26 PHP
一个简单的php MVC留言本实例代码(必看篇)
Sep 22 PHP
php 自定义错误日志实例详解
Nov 12 PHP
ThinkPHP实现生成和校验验证码功能
Apr 28 PHP
基于Laravel实现的用户动态模块开发
Sep 21 PHP
laravel实现登录时监听事件,添加登录用户的记录方法
Sep 30 PHP
Laravel中如何轻松容易的输出完整的SQL语句
Jul 26 PHP
php的header和asp中的redirect比较
Oct 09 #PHP
文件上传的实现
Oct 09 #PHP
简单易用的计数器(数据库)
Oct 09 #PHP
用Php实现链结人气统计
Oct 09 #PHP
也谈 PHP 和 MYSQL
Oct 09 #PHP
在WIN98下以apache模块方式安装php
Oct 09 #PHP
Php+SqlServer实现分页显示
Oct 09 #PHP
You might like
PHP 匿名函数与注意事项详细介绍
2016/11/26 PHP
使用Codeigniter重写insert的方法(推荐)
2017/03/23 PHP
thinkphp 验证码 的使用小结
2017/05/07 PHP
php简单读取.vcf格式文件的方法示例
2017/09/02 PHP
PHP测试框架PHPUnit组织测试操作示例
2018/05/28 PHP
jquery遍历input取得input的name
2009/04/27 Javascript
js下用gb2312编码解码实现方法
2009/12/31 Javascript
javascript中&quot;/&quot;运算符常见错误
2010/10/13 Javascript
JavaScript格式化数字的函数代码
2010/11/30 Javascript
javascript实现自动填写表单实例简析
2015/12/02 Javascript
jQuery模拟物体自由落体运动(附演示与demo源码下载)
2016/01/21 Javascript
jQuery animate和CSS3相结合实现缓动追逐效果附源码下载
2016/04/18 Javascript
JS小数运算出现多为小数问题的解决方法
2016/06/02 Javascript
简单易懂的天气插件(代码分享)
2017/02/04 Javascript
vue-cli项目如何使用vue-resource获取本地的json数据(模拟服务端返回数据)
2017/08/04 Javascript
微信小程序云开发 搭建一个管理小程序
2019/05/17 Javascript
js和jquery判断数据类型的4种方法总结
2020/08/28 jQuery
python xlsxwriter库生成图表的应用示例
2018/03/16 Python
Python3中正则模块re.compile、re.match及re.search函数用法详解
2018/06/11 Python
Python爬虫文件下载图文教程
2018/12/23 Python
Python基础学习之函数方法实例详解
2019/06/18 Python
Win10里python3创建虚拟环境的步骤
2020/01/31 Python
Scrapy爬虫文件批量运行的实现
2020/09/30 Python
详解使用scrapy进行模拟登陆三种方式
2021/02/21 Python
C#如何调用Word并打开一个Word文档
2013/05/08 面试题
学生安全教育材料
2014/02/14 职场文书
今冬明春火灾防控工作方案
2014/05/29 职场文书
抗震救灾标语
2014/06/26 职场文书
小学生感恩老师演讲稿
2014/08/28 职场文书
交警作风整顿剖析材料
2014/10/11 职场文书
政风行风整改方案
2014/10/25 职场文书
公路局群众路线教育实践活动第一阶段工作汇报
2014/10/25 职场文书
2015圣诞节贺卡寄语
2015/03/24 职场文书
收入证明怎么写
2015/06/12 职场文书
2016年春季开学典礼新闻稿
2015/11/25 职场文书
python 定义函数 返回值只取其中一个的实现
2021/05/21 Python