Smarty 是什么?
为什么使用它?
使用案例和工作流程
语法比较
模板继承
最佳做法
速成课程
目录
Smarty 附带了几个内置函数。这些内置函数是 Smarty 模板引擎的组成部分。它们被编译成相应的内嵌 PHP 代码,以实现最大性能。
您不能使用相同名称创建您自己的自定义函数;您也不需要修改内置函数。
这些函数中有一些带有assign
属性,该属性会收集函数结果到一个指定模板变量中,而不是输出;很像 {assign}
函数。
这是{assign}函数的简写形式。您可以将值直接分配到模板,或将值分配到数组元素。
在模板中分配变量本质上是将应用程序逻辑置入展示中,而这在 PHP 中可能处理得更好。自行决定是否使用。
以下属性可以添加到标记
属性
属性名称 | 简写 | 类型 | 必需 | 默认 | 描述 |
---|---|---|---|---|---|
作用域 | 无 | 字符串 | 否 | 无 | 已分配变量的作用域:'parent','root' 或 'global' |
选项标记
名称 | 描述 |
---|---|
nocache | 将变量分配给“nocache”属性 |
示例 7.6 在调用模板的作用域中分配
在包含的模板中分配的变量将在包含它的模板中可见。
{include file="sub_template.tpl"} ... {* display variable assigned in sub_template *} {$foo}<br> ...
上述模板包含以下示例 sub_template.tpl
... {* foo will be known also in the including template *} {$foo="something" scope=parent} {* bar is assigned only local in the including template *} {$bar="value"} ...