- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
smarty30中文手册文档
4、Smarty语法基础篇
4.1?变量
模板中的变量主要来源有三种。
1、是由原php文件中分配过来的。
$smarty-assign(name,韩灵稚);????#在源php文件中分配
span你好,?{$name}/span #在模板文件中使用
2、是由配置文件中分配过来的。
$smarty-configLoad(“configs/my.conf”)??#在源php文件中载入配置文件,也可以在模板中载入
span?style=color:{#fontcolor#};?font-size:{#fontsize#};这是{#gv#}/spanbr?/??#在模板文件中使用
3、是在模板文件中创建的。
{assign?var=name?value=韩灵稚?nocache=”false”scope=”global”}????#在模板中定义的变量,如果之前定义了相同的变量,则以最后一次定义为准。
{$name=韩灵稚}????#给变量直接赋值,如果该变量原来不存在,自动创建,3.0新特性。
{assign?var=foo?value=[1,2,3]}?????#定义普通数组变量
{assign?var=foo?value=[y=yellow,b=blue]}????#定义关联数组
{assign?var=foo?value=[1,[9,8],3]}??#定义数组中的数组
{$foo[]=1}????#增加变量数组$foo的一个元素
span你好,?{$name}/span #在模板文件中使用
【相关函数】
$smarty-getVariable($variable,?$_ptr?=?null,?$search_parents?=?true,?$error_enable?=?true) #获得变量,仅限于获得第一种方式的变量
$smarty-getTemplateVars($varname?=?null,?$_ptr?=?null,?$search_parents?=?true)???#获得变量,可以获得第一种和第三种方式的变量(第三种方式变量scope必须为global或者parent),如果想获得配置变量参看3.4
4.2?Smarty保留变量
Smarty系统中保留了一些内置变量,可以快速访问相应的变量。但是不能再源php中获得这些变量。
1、请求访问变量(Request?variables)
$smarty.get.变量???????#显示通过get方式传过来的指定变量的值。
$smarty.post.变量??????#显示通过post方式传过来的指定变量的值。
$smarty.cookies.变量 #显示通过cookie中指定变量的值。
$smarty.server.SERVER_NAME???#显示server变量值,phpinfo()中$_SERVER系列变量
$smarty.env.PATH?? #显示系统环境变量值,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}?
参看4.4.3和4.4.4
7、{$smarty.template}???#显示模板路径和名称
4.3?变量操作4.2.1赋值
{$name?=?新值}?比如,{$name=”我的名字叫韩灵稚”}???#新值将替代原值,如果原来无该变量,则创建变量并赋值。配置变量无法重新赋值。
{$name?=?表达式}?比如,{$name?=?1+2+$foo[bar]}??#$foo[bar]的值为1,?变量值为4
{$foo[bar]=1}????#给数组的一个元素赋值
{$foo[bar][blar]=1}???#给多维数组的一个元素赋值
{$foo?=?array(1,2,3,4,5)}???#利用php函数创建变量$foo,并赋值。
4.2.2访问
最简单的访问方法是?{$var},配置变量访问是{#configvar#}
数组变量的访问可以是{$array[1][1]},也可
文档评论(0)