Smarty中的内建函数(一)config_load、foreach...
来源:互联网 发布:云计算在生活中的应用 编辑:程序博客网 时间:2024/04/30 15:53
1、capture
将模板输出的数据存放到一个变量里,不能嵌套,<{capture name="变量名"}><{/capture}>之间的内容
通过<{$smarty.capture.变量名}>来访问
2、config_load
从配置文件读取变量
<{*必选file="指定文件"可选section="配置文件中的区域",即配置文件中的“[]”可选scope="local/parent/global"scope默认为local,即作用域为本模板parent作用域为本模板以及调用本模板的父模板global作用域为所有模板可选global="true/false",是否全局可见,与scope="parent"相同如果指定了global的同时又指定了scope,模板会忽略global,则以scope为准*}><{assign var="name" value="chuacom"}><{$name}><br><br><{config_load file="input.conf" section="UserEmail"}>name:<{#name#}><br><{*如果在本模板中已经存在此变量名,则会覆盖原有的变量值*}>email:<{#email#}><br><br><{config_load file="input.conf" section="UserID"}>name:<{#name#}><br>id:<{#id#}><br><{*UserID区域在配置文件中为hidden,所以不能被加载和使用*}>
# global 全局变量,在加载这个配置文件的时候,全局变量就会被加载,如果和局部变量同名,会优先使用局部变量name = "chuangrain"age = 20address = "四川"#域 ,用 “[ ]” 申明[UserEmail]email = "chuang@admin.com"#隐藏部分 "[. ]" 申明,在模板中无法使用这部分的变量[.UserID]id = '1111111111111111111'结果:
chuacom
name:chuangrain
email:chuang@admin.com
name:chuangrain
id:
3、foreach
$arr = array(array('id' => '001','name' => 'zhao',),array('id' => '002','name' => 'qian',),);$smarty->assign('arr',$arr);$smarty->display('input.html');
<{*from,必选,指定遍历的数组item,必选,当前元素的变量名key,可选,当前处理元素的键名name,可选,循环的名称foreachelse 在from变量没有值或不存在的时候执行*}><{foreach from=$arr item=arr1}>id:<{$arr1.id}>name:<{$arr1.name}><br><{foreachelse}>none<{/foreach}><br><{foreach from=$arr item=arr1 key=k}><{$k}>:<{$arr1.id}><{$k}>:<{$arr1.name}><br><{foreachelse}><{*如果$arr不存在或为空null时执行*}>none<{/foreach}><br><{foreach from=$arr item=arr1}><{foreach from=$arr1 item=new_arr key=k}><{$k}>:<{$new_arr}><{/foreach}><br><{/foreach}>运行结果:
4、include加载模板文件
<{*file,必选,加载文件的位置assign,可选,把模板文件放在这个变量中,暂时不用输出被包含的文件var...,可选,多选,变量名=值,将变量传递给被包含的模板,在被包含的模板中可以使用该变量*}><{include file="new.html" assign="article" title="SUSE" content="this is a test"}><{$article}><{*此时才将包含的模板文件显示出来*}>new.html
articleTitle:<{$title}><br>articleContent:<{$content}>运行结果:
5、include_php 加载php文件
<{include_php file="include_php.php" assign="user"}><{*file必选,文件位置,assign可选,存放包含文件的内容*}><{$user}>include_php.php
$arr = array('id' => '001','name' => 'zhao',);print_r($arr);运行结果:Array ( [id] => 001 [name] => zhao )
6、insert插入函数
插入一个同名的函数,不会缓存
$smarty->display('new.html');function insert_getTitle($arr = null){ //函数名为"insert_"加上insert中name相同的函数名print_r($arr); //函数体}
new.html<{insert name="getTitle" assign="info" title="this is a demo"}>//调用"insert_"加name的值函数//调用php程序中的insert_getTitle函数,并传递参数//如果php程序中不存在,会去查找扩展中的insert.getTitle.php文件中smarty_insert_getTitle函数
运行结果:Array ( [name] => getTitle [assign] => info [title] => this is a demo )
- Smarty中的内建函数(一)config_load、foreach...
- Smarty中的内建函数(一)config_load、foreach
- smarty-内建函数(config_load)
- Smarty-内建函数(利用foreach、section遍历数组)
- smarty内建函数的实例代码(一)
- PHP - Smarty模板引擎 - Manual手册 - Chapter 7. Built-in Functions第7章 内建函数 - {config_load}用于从一个配置文件加载配置变量到模板中
- smarty中的内建函数(二)if、section...
- smarty中的内建函数(二)if、section
- smarty内建函数
- smarty 内建函数
- smarty内建函数
- smarty内建函数
- smarty内建函数
- SMARTY内建函数
- smarty内建函数
- smarty内建函数
- smarty内建函数
- smarty内建函数
- CSS技巧及常见问题
- linux开启ftp和telnet
- 观察处理器队列长度Processor Queue Length
- 我对IT项目经理工作的理解
- ffmpeg与ffserver配合使用搭建流媒体服务
- Smarty中的内建函数(一)config_load、foreach...
- jfreechart饼图和柱状图 ajax
- html自适应表格
- android webView 使用方法
- uboot makefile分析之 make xx_config
- jquery asp.net 选择子节点checkbox
- xmu 1293. pets
- uboot makefile 之make
- 理解内存和文件系统缓存