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;
- 可以用循环项目中的当前键({$item@key})代替键值变量(参见下例)。
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}遍历数组
smarty内置函数的更多相关文章
- smarty 内置函数if 等判断
{if},{elseif},{else} Smarty的{if}条件判断和PHP的if 非常相似,只是增加了一些特性. 每个{if}必须有一个配对的{/if}. 也可以使用{else} 和 {else ...
- Smarty内置函数之capture
capture的作用是: 捕获模板输出的数据并将其存储到一个变量,而不是把它们输出到页面,任何在 {capture name="foo"}和{/capture}之间的数据将被存储到 ...
- smarty内置函数、自定义函数
1.把字符串里的d字母替换成h格式:{'d'|str_replace:'h':$str}; d要查找的字符 h要替换的字符 $str字符串 2.function test($param){$p1=$p ...
- Smarty内置函数之config_load
config_load的作用是: 用于从配置文件中加载变量,属性file引入配置文件名,另外若配置文件包含多个部分,可以使用属性section指定从那部分取得变量(若不指定,将会引入失败). 实例: ...
- smarty模板的内置函数
内置函数参考:http://www.php100.com/manual/smarty/language.builtin.functions.html 主要就是 foreach 和 if elseif ...
- 5.Smart使用内置函数或者自定义函数
1.使用内置函数 例如使用date函数 {"Y-m-d"|date:$time}格式{第一个参数|方法:第二个参数:第三个参数}即可转换成 2016-07-19 2.使用resi ...
- Smarty3——内置函数
Table of Content {$var} {$append} {assign} {block} {call} {config_load} {debug} {extends} {for} {for ...
- 8. Smarty3:模版中的内置函数
smarty3中对内置函数的修改比較大,加入了很多新的功能:变量声明.表达式,流程控制,函数.数组等.可是建议不要在模版中去使用过于复杂的逻辑,而是要尽量将一些程序设计逻辑写到PHP中,并在模版中採用 ...
- Entity Framework 6 Recipes 2nd Edition(11-12)译 -> 定义内置函数
11-12. 定义内置函数 问题 想要定义一个在eSQL 和LINQ 查询里使用的内置函数. 解决方案 我们要在数据库中使用IsNull 函数,但是EF没有为eSQL 或LINQ发布这个函数. 假设我 ...
随机推荐
- MySQL定义异常和异常处理方法
在MySQL中.特定异常须要特定处理.这些异常可以联系到错误,以及子程序中的一般流程控制.定义异常是事先定义程序运行过程中遇到的问题,异常处理定义了在遇到问题时相应当採取的处理方式.而且保证存储过程或 ...
- 一行python打印乘法表
一行代码打印乘法表 >>> print '\n'.join([' '.join(['%s*%s=%-2s' %(y,x,x*y) for y in range(1,x+1)]) fo ...
- sed awk文本处理教程
sed全名叫stream editor,流编辑器,用程序的方式来编辑文本,相当的hacker啊.sed基本上就是玩正则模式匹配,所以,玩sed的人,正则表达式一般都比较强. 把my字符串替换成Hao ...
- edmx-新建表
- 用dnSpy破解某旅游系统5.2版。
某系统是网上最常见也是目前最好用的旅游站系统之一,5.1版本之前采用的maxtocode加壳后可以用de4dot反混淆后破解.5.1版本以后用de4dot无法脱壳. 本文仅限学习和讨论,请勿做侵权使用 ...
- html5 webwork
在Web开发的时候经常会遇到浏览器不响应事件进入假死状态,甚至弹出“脚本运行时间过长“的提示框,如果出现这种情况说明你的脚本已经失控了. 一个浏览器至少存在三个线程:js引擎线程(处理js).GUI渲 ...
- Hadoop1的安装
目前hadoop1的稳定版本是1.2.1,我们以版本1.2.1为例详细的介绍hadoop1的安装,此过程包括OS安装与配置,JDK的安装,用户和组的配置,这些过程在hadoop2也有可能用到. Had ...
- uva748 - Exponentiation 高精度小数的幂运算
uva748 - Exponentiation Exponentiation Problems involving the computation of exact values of very ...
- Learning to Compare: Relation Network 源码调试
CVPR 2018 的一篇少样本学习论文 Learning to Compare: Relation Network for Few-Shot Learning 源码地址:https://github ...
- DefaultActionInvocation类的执行action
DefaultActionInvocation类的执行action 上一章里面有提到过DefaultActionInvocation类的invoke方法里面的invokeActionOnly方法.没有 ...