ImageVerifierCode 换一换
格式:DOC , 页数:15 ,大小:84.50KB ,
资源ID:662817      下载积分:5 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-662817.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(smarty3.0中文手册文档.doc)为本站会员(h****)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

smarty3.0中文手册文档.doc

1、4、Smarty 语法基础篇4.1 变量模板中的变量主要来源有三种。1、是由原 php 文件中分配过来的。$smarty-assign(name,韩灵稚); #在源 php 文件中分配你好, $name #在模板文件中使用2、是由配置文件中分配过来的。$smarty-configLoad(“configs/my.conf”) #在源 php 文件中载入配置文件,也可以在模板中载入这是#gv# #在模板文件中使用3、是在模板文件中创建的。assign var=“name“ value=“韩灵稚“ nocache=”false”scope=”global” #在模板中定义的变量,如果之前定义了相同

2、的变量,则以最后一次定义为准。$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 的一个元素你好, $name #在模板文件中使用【相关函数】$smarty-getVariable($variable, $_ptr = null, $search_parents = true, $err

3、or_enable = true) #获得变量,仅限于获得第一种方式的变量$smarty-getTemplateVars($varname = null, $_ptr = null, $search_parents = true) #获得变量,可以获得第一种和第三种方式的变量(第三种方式变量 scope 必须为 global 或者 parent),如果想获得配置变量参看 3.44.2 Smarty 保留变量 Smarty 系统中保留了一些内置变量,可以快速访问相应的变量。但是不能再源 php 中获得这些变量。1、请求访问变量(Request variables)$smarty.get.变量 #

4、显示通过 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 中指定变量的

5、值。2、时间访问变量$smarty.now #显示 unix 系统时间戳,需要变量调节器格式化,参看 4.2.4,也可以使使用time()3、常量访问变量$smarty.const._MY_CONST_VAL #访问 php 中的常量包括自定义常量和系统常量4、$smarty.capture 参看 4.4.15、配置访问变量$smarty.config.配置变量 #访问配置变量,等同于 #配置变量# 方式6、$smarty.section, $smarty.foreach 参看 4.4.3 和 4.4.47、$smarty.template #显示模板路径和名称4.3 变量操作 4.2.1 赋

6、值 $name = 新值 比如,$name=”我的名字叫韩灵稚” #新值将替代原值,如果原来无该变量,则创建变量并赋值。配置变量无法重新赋值。$name = 表达式 比如,$name = 1+2+$foobar #$foobar的值为 1, 变量值为 4$foobar=1 #给数组的一个元素赋值$foobarblar=1 #给多维数组的一个元素赋值$foo = array(1,2,3,4,5) #利用 php 函数创建变量$foo,并赋值。4.2.2 访问 最简单的访问方法是 $var,配置变量访问是#configvar#数组变量的访问可以是$array11,也可以支持$array.1.1对象

7、的访问$object-method1($x),也支持对象链,$object-method1($x)-method2($y)字符串与变量的混合输出“大家好,我是$name“ #Smarty 可以识别嵌入在双引号中的变量,只要此变量只包含数字、字母、下划线。“大家好,我是$name$obj-a“ #中括号、句号. 对象相关 - ,必须将变量用两个符号括起。4.2.3 变量名变量 与 php 相同,都支持在变量名称中使用变量,smarty 还支持使用表达式。$foo #一个普通的变量$foo_$bar #变量名中包含变量$foo_$x+$y #变量名中可以支持表达式$foo_$bar_buh_$bl

8、ar #变量名包含多个变量4.2.4 变量调节器 变量调节器主要是对变量进行格式化。$var|capitalize #将变量首字大写$var|count_characters:false #计算变量里的字符数,false 为不计算空格。若变量为数值则为数字和小数点等其他运算符的总和$var| cat:var2 #将 var2 连接到 var,若为数值以字符串处理。$var| count_paragraphs #计算变量里的段落数量,已“n“区分$var| count_sentences #计算变量中句子的数量,不好使$var| count_words #计算变量中单词的数量 已非字母和数字的字

9、符分割统计$var| date_format :“%H:%M:%S“ #格式化变量日起,具体参数看 chm 文档$var| default:“no title“ #当变量为空时,为变量提供一个默认值$var| escape:url #对变量值进行转码,具体参数看 chm 文档$var| indent:10:“*“ #对变量指定具体字符进行缩进,若为空格在 html 中不会显示出来,具体参数看 chm 文档$var| lower #将变量小写$var| nl2br #将变量中的“n“转换成”“$var| regex_replace:“/rtn/“:“ “ #将变量中的符合正则的内容替换成指定内容

10、$var| replace:“Garden“:“Vineyard“ #将变量中要求的内容替换成指定内容$var| spacify:“ #将变量字符与字符之间插入指定内容,包括空格$var|string_format:“%d“ #将变量中的内容格式化,格式化参数同 printf$var| strip: “*“ #用一个空格或一个给定字符替换所有重复空格,换行和制表符$var| strip_tags #删除变量中的 html 标记, 去除标签,包括在之间的任何内容$var| truncate:30:“.“:true #截取变量的到规定的长度,具体参数看 chm 文档$var| upper #将变量

11、大写$var| wordwrap:30:“n“:true #规定指定的长度强制换行,具体参数看 chm 文档修改器可以复合组合。$articleTitle|lower|spacify|truncate:30:“. . .“设置默认变量调节器$smarty-getDefault_modifiers() #默认为空数组$smarty-setDefault_modifiers(array(spacify:“,capitalize) #设置变量的默认调节器,必须用 arrayname #模板变量 name 自动加入上面两个调节器同时也可以定义自己的调节器,详情请参考 6.7.4 和 6.8.44.2.

12、5 变量作用域(未写) 4.4 内建函数 4.4.1 capture capture 函数的作用是捕获模板输出的数据并将其存储到一个变量里,而不是把它们输出到页面.任何在 capture name=“foo“和/capture之间的数据将被存储到变量$foo 中。这样可以根据实际情况,选择性的输出一些内容,输出的语法是$smarty.capture.变量。capture name=“bottom“include file=“bottom.tpl“ nr=“这是底部的内容“/Captureif true #进行条件判断,确定是否输出$smarty.capture.bottom/if4.4.2 c

13、onfig_load 参看 3.44.4.3 foreach,foreachelse foreach 适合于简单数组(元素类型相同)foreach name=名称 item=内容 key=键 from=数组 #2.0 中的用法,3.0 沿用正常执行foreachelseFrom 变量数组没有值时(0 个元素)执行。/foreach例子:foreach name=for1 item=num from=$foo$smarty.foreach.for1.index+1个元素:$numif is_array($num)foreach name=for2 item=num2 key=key2 from=

14、$num$str|cat:$smarty.foreach.for2.index+1|cat:“个元素:“|cat:$num2|cat:“ key 是“|cat:$key2|indent:1:“.“/foreach/ifforeachelse$smarty.foreach.for1.index+1个元素:没有值!/foreachforeach 的内置变量$smarty.foreach.foreachname.index #(循环内部使用)显示当前循环的索引,如果数组为空,返回-1$smarty.foreach.foreachname. iteration #(循环内部使用)显示当前的循环次数$s

15、marty.foreach.foreachname.first #(循环内部使用)如果为第一次循环,返回 true$smarty.foreach.foreachname.last #(循环内部使用)如果为最后一次循环,返回 true$smarty.foreach.foreachname.total #(循环内外部使用)显示循环的总次数foreach 在 3.0 中做一定的升级,语法更接近于 php,内置变量也更简洁。foreach $myarray as $var./foreachforeach 的内置变量,均可在内外部使用$varkey #输出元素的键值,简单为 012,关联为具体键值。$v

16、ariteration #显示当前的循环次数,外部使用为最后一次$varindex #显示当前循环的索引,如果数组为空,返回-1,外部使用为最后一次$vartotal #显示循环的总次数$varfirst #如果为第一次循环,返回 true$varlast #如果为最后一次循环,返回 true4.4.4 section,sectionelse section 适用于复杂的数组操作,不适合关联数组。但是在 3.0 中并为对他做什么升级和修改,而是直接推出了 for 命令,for 更接近于 php 语法。可以预见,section 将在未来版本中淘汰。section name=名称 loop=循环数

17、组(次数) start=开始(0) step=步阶(1) max=最大循环次数 show=是否显示(true) #2.0 中的用法,3.0 沿用正常执行sectionelseloop 数组没有值时(0 个元素)执行。/section 例子:section name=sec1 loop=$foo step=1 start=0 show=true第$smarty.section.sec1.index+1个元素:$foosec1 循环次数是$smarty.section.sec1.iterationif is_array($foosec1)section name=sec2 loop=$foosec

18、1 step=1 start=0 show=true第$smarty.section.sec2.index+1个元素:$foosec1sec2 循环次数是$smarty.section.sec2.iteration/section/ifsectionelse$smarty.section.sec1.index个元素:没有值!/sectionSection 的内置变量与 foreach 相同。4.4.5 include include file=“包含文件“ var=”自定义传入包含文件的变量”assign=” 指定一个变量保存待包含模板的输出”如果规定了 assign ,则包含文件不会马上输出

19、,模板输出的数据将存储到 assign 指定的变量里,这样可以根据实际情况,再输出包含文件的内容。原理类似于 capture。4.4.6 include_php include_php file=“包含文件“ once=”是否指包含一次(true)”assign=” 指定一个变量保存待包含的输出”包含 php 文件,包含的文件正常编译,并提供输出。如果规定了 assign ,则包含文件不会马上输出,输出的数据将存储到 assign 指定的变量里,这样可以根据实际情况,再输出包含文件的内容。4.4.7 insert Insert 最大的特点是不缓存。他的参数可能会缓存。但是 insert 所调用

20、的函数内部不缓存。insert name=”函数名称” script=”包含函数的脚本”var.=”函数参数” assign=” 指定一个变量保存调用的输出”Insert 调用的函数有特别的规定,函数格式必须是“smarty_insert_函数名称($params,如果规定了 assign ,则调用函数的记过不会马上输出,输出的数据将存储到 assign 指定的变量里,这样可以根据实际情况,再输出包含文件的内容。Insert 也可以定义成组件,写入组件库中,详情请参考 6.8.54.4.8 if,elseif,else if $name eq “Fred“Welcome Sir.elseif

21、$name eq “Wilma“Welcome Maam.elseWelcome, whatever you are./if这个没有什么太好说的。比较操作符可以是 “=、=”等,也可以是”eq、ne”等,这个看手册吧。4.4.9 ldelim,rdelim 这个也很简单,分别替换 smarty 当前规定的左边界符和右边界符。一般成对使用。4.4.10 literal Literal 标签区域内的数据将被当作文本处理,此时模板将忽略其内部的所有字符信息。该特性用于显示有可能包含大括号等字符信息的 js、css 。当这些信息处于 literal/literal 标签中时,模板引擎将不分析它们,而直

22、接显示。4.4.11 strip Smarty 在显示前将除去任何位于 strip/strip 标记中数据的首尾空格和回车。4.4.12 php php 标签允许在模板中直接嵌入 php 脚本。 php标签默认是关闭的,可以通过如下方式打开$smarty-setAllow_php_tag(true) #设置开启识别 php 的标签$smarty-getAllow_php_tag() #获得当前对php的支持状态4.4.13 for,while 这是 3.0 新增的函数。语法类似于 php,这两个函数都不适合关联数组for $x=0, $y=count($foo); $xassign($tpl_var, $value = null, $nocache = false, $scope = SMARTY_LOCAL_SCOPE) #在 php 文件中定义nocache 决定了是否需要不缓存该变量(前提是需要启动缓存)。scope 决定了变量的作用范围,有 global、parent、local【相关函数】$smarty-assignGlobal($varname, $value = null, $nocache = false) #直接分配一个全局的变量

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。