龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

《PHP与MySQL程序设计(第3版)》――19.4 使用Smarty

时间:2009-12-17 12:00来源:未知 作者:admin 点击:
分享到:
19.4 使用Smarty 使用Smarty只需要在执行脚本中使Smarty类库可用一般使用require()语句: 之后,就可以实例化Smarty类: 开始利用这个特性时所要做的工作只有这么多。下面先来看一个简单的

19.4 使用Smarty

使用Smarty只需要在执行脚本中使Smarty类库可用一般使用require()语句:

之后,就可以实例化Smarty类:

开始利用这个特性时所要做的工作只有这么多。下面先来看一个简单的示例。代码清单19-3给出了一个简单的设计模板。注意,模板中有两个变量:$title和$name。两个变量都放在大括号中,大括号是Smarty的默认定界符。这些定界符告诉Smarty要对定界符所包围的内容完成某些操作。在这个例子中,唯一的动作就是用通过应用程序逻辑(代码清单19-4)传入的相应值替代变量。不过,你很快将看到,Smarty还能够完成大量其他任务,例如执行表现逻辑和修改文本格式等。

代码清单19-3 简单的Smarty设计模板(templates/welcome.tpl)

还要注意,Smarty希望这个模板位于templates目录内,除非通过$template_dir修改了模板目录。

代码清单19-4给出相应的应用程序逻辑,它将适当的变量值传入Smarty模板。

代码清单19-4 index.tpl模板的应用程序逻辑

输出结果如图19-1所示。

这个基本示例展示了Smarty能够完全分离Web应用程序逻辑层和表现层。但是,这只是Smarty全部特性集的一点皮毛。在进入其他主题之前,有必要正式地介绍一下前例中用来获取和显示Smarty模板的display()方法。基于Smarty的脚本中都会用到这个方法,因为它负责获取和显示由template引用的模板。其形式为:

图19-1 代码清单19-4的输出

可选参数cache_id指定缓存标识符的名,这将在19.8节中讨论。另一个可选参数compile_id在维护同一页面的多个缓存时使用。多个缓存将在19.8.3节中介绍。

精彩图集

赞助商链接