• Tag:php模板
    使用PHP编程的人都会碰到这样一个问题:当PHP代码和HTML代码在一起的时候,看PHP代码很费劲,整个文件也无法用Dreamweaver来编辑,这对于PHP程序员和美工来讲,修改这样的文件就象一个噩梦。
    PHP中的模板(Template)技术就是为了解决这个问题而出现的。PHP模板类有很多,比较常见的是 FastTemplate 和 PHPLib, 因为出现得早,在PHP编程界名声很大。PHP程序员不知道这两个类,就象VB程序员不知道MsgBox函数一样,是一件不可思议的事情。
    以前我们需要去下载PHP模板类,现在PHP4有了自己的模板类 IntegratedTemplate 和 IntegratedTemplateExtension,功能和PHPLib 差不多。这两个类是子类和父类的关系。一般我们用 IntegratedTemplateExtension 就可以了。让人感到不可思议的是 IntegratedTemplate 不是从 PEAR 类继承过来,无法用到 PEAR 类的 debug 功能。
  •    现在大部分模板类中都提供block功能,block用来处理不确定个数的HTML 元素,当出现多层不可定的元素,就会用到block的嵌套,对于block嵌套的用法,经过多次测试还是有需要注意的地方,下面用一个例子说明block嵌套的一种处理方法。

    1、我们先来看一下例子要达到的效果(图一):

    点击查看原图

  • 嵌套的模板

      parse()函数的一个灵巧的特性是它创建的MyOutput句柄是一个真正的模板变量,就象some_color 是一
    个模板变量。所以如果你有另一个模板,它有一个{MyOutput}标签,当你分析第二个模板时,所有的
    {MyOutput}标记将被替换为MyOutput中的分析后的文本。这个特性允许你将一个模板文件嵌入到另一个模板
    中。所以,我们可能有另一个名为wholePage.ihtml的模板,内容如下:

    对不起,你没赢。但是如果你赢了,我们将对你说:
    {MyOutput}

      并且在wholePage.ihtml被分析后,最后的结果将是:

    对不起,你没赢。但是如果你赢了,我们将对你说:
    祝贺!你赢了一辆新蓝色Honda Prelude!

      下面是分析两个模板的PHP代码: