很久没有使用Smarty做项目了,今天突然要改改自己的网站里面的一些东西,因为我网站是很久以前用smarty模板引擎做的,改着改着有些地方就感觉还得网上搜答案了,看来对久违的smarty已经开始生疏了,赶紧补习一下。对Smarty模板的保留变量稍微做一下总结,以备后用。
{$smarty}保留变量是可以在模板中直接访问的一些特殊的变量,不需要从PHP脚本中分配。
{$smarty.get},{$smarty.post}等等用于访问页面请求变量,主要的页面请求变量还有 get,post,cookies,server,enviroment和session变量。例如{$smarty.server.SERVER_NAME}取得服务器变量,{$smarty.env.PATH}取得系统环境变量path, {$smarty.request.password}取得get/post/cookies/server/env的复合变量。
{$smarty.ldelim}和{$smarty.rdelim} 分别用于显示当前使用的左分隔符和右分隔符
{$smarty.now} 用于访问当前时间戳. 可以用 date_format 调节器格式化输出. 例如{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"} ,输出格式如:2012-08-01 07:19:09
{$smarty.const} 直接访问PHP常量. 例如{$smarty.const.__FILE__}相当于php中的__FILE__常量,当然也可以访问自定义的常量。
{$smarty.capture} 可以将 {capture}..{/capture}标签内的数据通过{$smarty.capture.name}输出。关于capture的详细用法可参考 http://www.phpernote.com/php-template-framework/43.html
{$smarty.config} {$smarty}变量可以访问已经加载的config变量,注意页面模板中必须先加载类似{config_load file="web.conf"}。例如 {$smarty.config.pageTitle}就可以表示 {#pageTitle#}。
{$smarty.section}, {$smarty.foreach} 可以访问'section'和'foreach'循环的属性.
{$smarty.template} 显示当前被处理的模板的名字.
{$smarty.version} 显示当前所使用的smarty模板引擎的版本号