你不能建立相同名称的; 同时你也不需要修改这些内置函数。

少数的内置函数有属性, 可以将函数的结果赋值给模板变量,而不是输出; 效果如同 函数。

{$var=…}

{assign}函数的缩写。你可以在模板内对变量进行赋值,或者对数组元素进行赋值。

在模板中进行赋值,从根本上讲还是将程序逻辑放到显示层来进行了,在PHP端进行此操作会更好。请自行考虑。

下面是该标签的属性:

可选标记:

名称 说明
nocache 对赋值操作不进行缓存


Example 7.1. 简单赋值

输出:

  1. The value of $name is Bob.
  2.  


Example 7.2. 数学运算赋值


Example 7.3. 对数组元素赋值

  1.  


Example 7.5. 附加到数组

  1. {$users[]="Bob"}
  2.  


Example 7.6. 赋值的作用范围

在包含的模板内赋值的变量,在包含模板内可见。

上面的模板是包含了下面的模板

  1. {* foo will be known also in the including template *}
  2. {$foo="something" scope=parent}
  3. {* bar is assigned only local in the including template *}
  4. {$bar="value"}
  5. ...

参见 和