smarty30中文手册文档Word格式.docx
- 文档编号:13526189
- 上传时间:2022-10-11
- 格式:DOCX
- 页数:14
- 大小:18.43KB
smarty30中文手册文档Word格式.docx
《smarty30中文手册文档Word格式.docx》由会员分享,可在线阅读,更多相关《smarty30中文手册文档Word格式.docx(14页珍藏版)》请在冰豆网上搜索。
br
/>
#在模板文件中使用
3、是在模板文件中创建的。
{assign
var="
name"
value="
韩灵稚"
nocache=”false”scope=”global”}
#在模板中定义的变量,如果之前定义了相同的变量,则以最后一次定义为准。
{$name="
}
#给变量直接赋值,如果该变量原来不存在,自动创建,3.0新特性。
var=foo
value=[1,2,3]}
#定义普通数组变量
value=['
y'
=>
'
yellow'
b'
blue'
]}
#定义关联数组
value=[1,[9,8],3]}
#定义数组中的数组
{$foo[]=1}
#增加变量数组$foo的一个元素
【相关函数】
getVariable($variable,
$_ptr
=
null,
$search_parents
true,
$error_enable
true)#获得变量,仅限于获得第一种方式的变量
getTemplateVars($varname
true)
#获得变量,可以获得第一种和第三种方式的变量(第三种方式变量scope必须为global或者parent),
如果想获得配置变量参看3.4
4.2
Smarty保留变量
Smarty系统中保留了一些内置变量,可以快速访问相应的变量。
但是不能再源php中获得这些变量。
1、请求访问变量(Request
variables)
$smarty.get.变量
#显示通过get方式传过来的指定变量的值。
$smarty.post.变量
#显示通过post方式传过来的指定变量的值。
$smarty.cookies.变量#显示通过cookie中指定变量的值。
$
#显示server变量值,phpinfo()中$_SERVER系列变量
#显示系统环境变量值,phpinfo()中$_ENV系列变量
$smarty.session.变量#显示session中指定变量的值
$smarty.request.变量#显示通过post、get、cookie中指定变量的值。
2、时间访问变量
{$smarty.now}#显示unix系统时间戳,需要变量调节器格式化,参看4.2.4,也可以使使用{time()}
3、常量访问变量
{$smarty.const._MY_CONST_VAL}
#访问php中的常量包括自定义常量和系统常量
4、{$smarty.capture}
参看4.4.1
5、配置访问变量
{$smarty.config.配置变量}
#访问配置变量,等同于
#配置变量#
方式
6、{$smarty.section},
{$smarty.foreach}
参看
7、{$smarty.template}
#显示模板路径和名称
4.3
变量操作
{$name
新值}
比如,{$name=”我的名字叫韩灵稚”}
#新值将替代原值,如果原来无该变量,
则创建变量并赋值。
配置变量无法重新赋值。
表达式}
比如,{$name
1+2+$foo['
bar'
#$foo['
]的值为1,
变量值为4
{$foo['
]=1}
#给数组的一个元素赋值
]['
blar'
#给多维数组的一个元素赋值
{$foo
array(1,2,3,4,5)}
#利用php函数创建变量$foo,并赋值。
最简单的访问方法是
{$var},配置变量访问是{#configvar#}
数组变量的访问可以是{$array[1][1]},也可以支持{$
对象的访问{$object->
method1($x)},也支持对象链,{$object->
method1($x)->
method2($y)}
字符串与变量的混合输出
{"
大家好,我是$name<
#Smarty可以识别嵌入在双引号中的变量,
只要此变量只包含数字、字母、下划线。
大家好,我是`$name[$obj->
a]`<
#中括号[]、句号.
对象相关
->
必须将变量用两个`符号括起。
与php相同,都支持在变量名称中使用变量,smarty还支持使用表达式。
$foo
#一个普通的变量
$foo_{$bar}
#变量名中包含变量
$foo_{$x+$y}
#变量名中可以支持表达式
$foo_{$bar}_buh_{$blar}
#变量名包含多个变量
变量调节器主要是对变量进行格式化。
{$var|capitalize}
#将变量首字大写
{$var|count_characters:
false}
#计算变量里的字符数,false为不计算空格。
若变量为数值则为数字和小数点等其他运算符的总和
{$var|
cat:
var2}#将var2连接到var,若为数值以字符串处理。
count_paragraphs}#计算变量里的段落数量,已“\n“区分
count_sentences}#计算变量中句子的数量,不好使
count_words}#计算变量中单词的数量
已非字母和数字的字符分割统计
date_format
:
%H:
%M:
%S"
}#格式化变量日起,具体参数看chm文档
default:
no
title"
}#当变量为空时,为变量提供一个默认值
escape:
url}
#对变量值进行转码,具体参数看chm文档
indent:
10:
*"
}
#对变量指定具体字符进行缩进,若为空格在html中不会显示出来,具体参数看chm文档
lower}
#将变量小写
nl2br
#将变量中的“\n“转换成”<
“
regex_replace:
/[\r\t\n]/"
}#将变量中的符合正则的内容替换成指定内容
replace:
Garden"
Vineyard"
}#将变量中要求的内容替换成指定内容
spacify:
^^"
}#将变量字符与字符之间插入指定内容,包括空格
{$var|string_format:
%d"
#将变量中的内容格式化,格式化参数同printf
strip:
#用一个空格或一个给定字符替换所有重复空格,换行和制表符
strip_tags}#删除变量中的html标记,
去除<
和>
标签,包括在<
之间的任何内容
truncate:
30:
..."
true}
#截取变量的到规定的长度,具体参数看chm文档
upper}
#将变量大写
wordwrap:
\n"
#规定指定的长度强制换行,具体参数看chm文档
修改器可以复合组合。
{$articleTitle|lower|spacify|truncate:
.
."
}
设置默认变量调节器
getDefault_modifiers()
#默认为空数组
setDefault_modifiers(array('
capitalize'
)
#设置变量的默认调节器,必须用array
{name}
#模板变量name自动加入上面两个调节器
同时也可以定义自己的调节器,详情请参考
4.4
内建函数4.4.1
capture
capture函数的作用是捕获模板输出的数据并将其存储到一个变量里,而不是把它们输出到页面.
任何在
{capture
name="
foo"
}和{/capture}之间的数据将被存储到变量$foo中。
这样可以根据实际情况,选择性的输出一些内容,输出的语法是$smarty.capture.变量。
bottom"
{include
file="
bottom.tpl"
nr="
这是底部的内容"
{/Capture}
{if
true
#进行条件判断,确定是否输出
{$
{/if}
4.4.2
config_load
参看3.4
4.4.3
foreach,foreachelse
foreach
适合于简单数组(元素类型相同)
{foreach
name=名称
item=内容
key=键
from=数组}
#2.0中的用法,3.0沿用
正常执行
{foreachelse}
From变量数组没有值时(0个元素)执行。
{/foreach}
例子:
name=for1
item=num
from=$foo}
{$
is_array($num)}
name=for2
item=num2
key=key2
from=$num}
{$str|cat:
$"
个元素:
|cat:
$num2|cat:
key是"
$key2|indent:
1:
}<
foreach的内置变量
#(循环内部使用)显示当前循环的索引,如果数组为空,返回-1
iteration
#(循环内部使用)显示当前的循环次数
$#(循环内部使用)如果为第一次循环,返回true
$#(循环内部使用)如果为最后一次循环,返回true
$#(循环内外部使用)显示循环的总次数
在3.0中做一定的升级,语法更接近于php,内置变量也更简洁。
$myarray
as
$var}...{/foreach}
foreach的内置变量,均可在内外部使用
$var@key
#输出元素的键值,简单为012,关联为具体键值。
$var@iteration
#显示当前的循环次数,外部使用为最后一次
$var@index
#显示当前循环的索引,如果数组为空,返回-1,外部使用为最后一次
$var@total
#显示循环的总次数
$var@first
#如果为第一次循环,返回true
$var@last
#如果为最后一次循环,返回true
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- smarty30 中文 手册 文档