smarty内置函数

1、{append} 追加

2、{assign} 赋值

3、{block} 块

4、{call} 调用

5、{capture}捕获

6、{config_load}用来从配置文件中加载config变量(#variables#)到模版。

7、{extends} 继承

{extends}标签用在模板继承中子模版对父模板的继承。具体的细节参考模板继承一节。

  • {extends}标签用在模版中的第一行;
  • 如果子模板用{extends}标签继承父模板,那么它只能包含{block}标签(内容),其它任何模板内容都将忽略;
  • 使用此语法为模板资源继承$template_dir目录外的文件。

8、{foreach},{foreachelse}遍历

{foreach}用来遍历数据数组,{foreach}与{section}循环相比更简单、语法更干净,也可以用来遍历关联数组。
{foreach $arrayvar as $itemvar}
{foreach $arrayvar as $keyvar=>$itemvar}

    • {foreach}循环可以嵌套;
    • 数组变量通常是(另)一个数组的值,用来指导循环的次数,你可以为循环传递一个整数;
    • 当数组变量无值时执行{foreachelse};
    • {foreach}的属性是@index、@iteration、@first、@last、@show、@total;
    • 可以用循环项目中的当前键({[email protected]})代替键值变量(参见下例)。

9、{function} 函数

{function}用来在模板中创建函数,可以像调用插件函数一样调用它们。
取代在插件中写表象内容的函数,让模板保持一致性通常是个更好的选择。它也简化了对数据的遍历,例如深度的嵌套菜单。
另外你可以在模板中直接使用{funcname...}函数。

    • {function}标签必须包含模板函数名的name属性,该name标签名必须能够调用模板函数;
    • 默认变量值应能作为属性传递到模板函数,当模板函数被调用的时候,默认值应能被复写;
    • 在模板函数内部应能使用被调用模板的所有变量值,在模板函数中更改或新建变量的值必须具局部作用域,而且在执行模板函数后这些变量值在被调用模板内部应不可见。

10、{if}{elseif}{else} 条件

每一个{if}必须与一个{/if}成对出现,允许使用{else}和{elseif},所有php条件和函数在这里同样适用,诸如||、or、&&、and、is_array()等等。

11、{include} 包含

12、{insert}插入

{insert}标签类似于{include}标签,不同之处是即使打开caching,{insert}所包含的内容也不会被缓存,每次调用模板都会执行{insert}。

13、{section},{sectionelse}遍历数组

时间: 2024-08-10 17:17:23

smarty内置函数的相关文章

smarty 内置函数

内置函数 1.使用{$var=...}来创建一个变量. //在模版中创建变量 {$name = 'Mr.Lee'} //输出变量 {$name} 2.使用{assign}来为变量赋值. //这又是一种创建变量方式 {assign var='name' value='Mr.Lee'} //输出 {$name} 3.使用{append}来创建数组变量. //value 表示值,index 表示字符串索引 {append var='name' value='Mr.' index='first'} {a

Smarty内置函数之capture

capture的作用是: 捕获模板输出的数据并将其存储到一个变量,而不是把它们输出到页面,任何在 {capture name="foo"}和{/capture}之间的数据将被存储到变量$foo中,该变量由name属性指定,在模板中通过 $smarty.capture.foo 访问该变量,{capture}必须成对出现,即以{/capture}作为结尾,该函数不能嵌套使用,capture有两个属性:name和assignassign: 实例: 第一种情况:使用name属性 {captur

Smarty内置函数之config_load

config_load的作用是: 用于从配置文件中加载变量,属性file引入配置文件名,另外若配置文件包含多个部分,可以使用属性section指定从那部分取得变量(若不指定,将会引入失败). 实例: 配置中的变量需要通过两个“#”或者保留变量 $smarty.config.来调用:   test.tpl {config_load file='color.conf' section='con2'}   <div style="{#page_title#}</div>   colo

smarty中调用php内置函数

CleverCode发现smarty中调用php内置函数可以通过|实现.|前后没有空格.如果是数组求count需要加上@. 1个参数时候: {{'param1'|functionName}} 例如 {{$tmpStr|strlen}} 2个参数时候: {{'param1'|functionName:'param2'}} {$tmpStr|substr:'1'} 多个参数时候: {{'param1'|functionName:'param2':'param3'..}} {{$tmpStr|subs

Smarty3&mdash;&mdash;内置函数

Table of Content {$var} {$append} {assign} {block} {call} {config_load} {debug} {extends} {for} {foreach},{foreachelse} {function} {if} {elseif} {else} {include} {include php} {insert} {ldelim} {rdelim} {literal} {nocache} {php} {section} {sectionels

5.Smart使用内置函数或者自定义函数

1.使用内置函数 例如使用date函数 {"Y-m-d"|date:$time}格式{第一个参数|方法:第二个参数:第三个参数}即可转换成 2016-07-19  2.使用resigeterPlugin注册到smarty模板里面 先自定义函数 function ownFun($arr){ $p1 = $arr['p1']; $p2 = $arr['p2']; return "引入的第一个参数是".$p1." 第二个参数是".$p2; } 注册到模

8. Smarty3:模版中的内置函数

smarty3中对内置函数的改动比较大,添加了许多新的功能:变量声明,表达式,流程控制,函数,数组等.但是建议不要在模版中去使用过于复杂的逻辑,而是要尽量将一些程序设计逻辑写到PHP中,并在模版中采用非常简单的语法即可调用.通常只在模版中进行一些如变量输出,流程判断及数组遍历等操作即可. 1. 变量声明 在模版中声明变量或用来在模版运行时为模版变量赋值,这是在Smarty3中新增的功能. 使用{assign},在模版运行时为模版变量或数组元素赋值 和在赋值时使用一些表达式 {$var=...}是

内置函数

内置函数思维导图: 惊喜不断哟~~~~~~~

lambda表达式+python内置函数

传统的定义函数方式如下 def f1(): return 123 lambda表达式定义函数 f2 = lambda : 123 python3的内置函数 1.abs 绝对值 i = abs(-11) print (i) 输出结果是11 abs = absolute 2,all 循环参数,如果每个元素都为真,则返回为真 r = all([True, True]) print (r) 在python中 0 () [] ''和 None是False(空值都是假的) r = all(["123&quo