当前位置: 首页 > 图文教程 > 网络编程 > PHP > 用PHP制作静态网站的模板框架(二)

PHP
PHP自动更新新闻DIY
模拟OICQ的实现思路和核心程序(三)
如何对PHP程序中的常见漏洞进行攻击(下)
通过ODBC连接的SQL SERVER实例
使用sockets:从新闻组中获取文章(二)
PHP+MYSQL的文章管理系统(二)
使用sockets:从新闻组中获取文章(三)
使用sockets:从新闻组中获取文章(一)
用cookies来跟踪识别用户
PHP实现分页的一个示例
PHP+MYSQL的文章管理系统(一)
消息持续发送的完整例子
如何利用php+mysql保存和输出文件
操作Oracle的php类
计数器详细设计
一个程序下载的管理程序(三)
一个程序下载的管理程序(一)
在php中取得image按钮传递的name值
一个程序下载的管理程序(二)
一个程序下载的管理程序(四)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 68 ::
收藏到网摘: n/a

PHP代码全部保存到单独的文件中,这个文件也就是由页面URL实际调用的文件。Web服务器通过PHP引擎解析该文件,然后把结果返回给浏览器。一般地,PHP代码总是动态地生成页面内容,比如查询数据库或者执行某种计算等。下面是一个例子:

<?php
// example.php
require('class.FastTemplate.php');
$tpl = new FastTemplate('.');
$tpl->define( array( 'main' => 'main.htm',
'header' => 'header.htm',
'leftnav' => 'leftnav.htm' ) );
// 此处的PHP代码设置$content使其包含合适的页面内容
$tpl->assign('CONTENT', $content);
$tpl->parse('HEADER', 'header');
$tpl->parse('LEFTNAV', 'leftnav');
$tpl->parse('MAIN', 'main');
$tpl->FastPrint('MAIN');
?>
   这里我们使用的是流行的FastTemplate模板类,但其基本思路对于其他许多模板类来说都一样。首先你实例化一个类,告诉它到哪里去寻找模板文件以及哪一个模板文件与页面的哪部分对应;接下来是生成页面内容,把结果赋予内容的标识符;然后,依次解析各个模板文件,模板类将执行必要的替换操作;最后把解析结果输出到浏览器。

   这个文件完全由PHP代码构成,不包含任何HTML代码,这是它最大的优点。现在,PHP程序员可以集中精力编写生成页面内容的代码,而不必为了如何生成HTML去正确地格式化最终页面而担心。

   你可以使用这种方法和上面的文件构造出一个完整的网站。如果PHP代码是以URL中的查询字符串为基础生成页面内容,例如http://www.foo.com/example.php?article=099,你可以据此构造出一个完整的杂志网站。

   很容易看出采用模板还有第二个好处。如上例所示,页面左边的导航条单独保存为一个文件,我们只需编辑这一个模板文件就可以改变网站所有页面左边的导航条。