网站地图    收藏   

主页 > 后端 > PHP语言 >

php-smarty模板使用教程(一)(2)

来源:未知    时间:2014-09-15 23:20 作者:xbdadmin 阅读:

[导读] 模板设计篇 一、注释 格式: *注释内容* !--- html注释 S marty注释不会显示在源文件中的 S marty注释是给模板设计者来看的 二、模板中的变量 l 由php文件分配...

 
模板设计篇
一、注释
格式:
*注释内容*
 
<!--  -àhtml注释
Smarty注释不会显示在源文件中的
Smarty注释是给模板设计者来看的
 
smarty模板的注释
 
二、模板中的变量
由php文件分配
$smarty->assign(name,zhangsan);
在php文件中为模板变量分配置数据,共有三种格式:
分配普通变量
分配数组变量
分配对象变量
由配置文件分配
color=“#ff0000”
{config_load file=“file.conf”}
{#color#}
在模板文件中创建
{assign var=‘name’ value=‘value’}
{$name}
 
smarty变量的设置
 
三、变量调节器
变量调节器主要是对变量进行格式化。
格式:
{$var|调节器:参数1:参数2:……} 
有时,我们将变量输出给模板时,需要模板在显示的时候按照我们想显示的格式进行显示
比如:字符串的一部分、大写、行宽约束、这些功能应该能变量调节器来完成
{$var|capitalize}  :首字母大写
{$var|count_characters:true} :计算字符总数,true表示计算空格
{$var|cat:var2} :连接字符串
{$var|count_paragraphs} :计算总段落
{$var|count_sentences} :计算总句数
{$var|count_words} :计算总单词数
{$var|date_format:”%H%M%S”} :格式化时间
{$var|default:”value”} :设置默认值 ,当这个变量的值为空或者没有设置这个值
{$var|escape} :转码
{$var|indent:10:”*”} :缩进  
{$var|lower} :小写
{$var|nl2br} :转换换行符   \n----à<br/>
{$var|regex_replace:”/[\t\n]/”:” “} :正则替换
{$var|replace:”aa”:”bb”} :字符串替换
{$var|spacify:”^^”} :插空
{$var|string_format:”%d”}  :格式化字符串 
{$var|strip: “*”}  :去除连续空格
{$var|strip_tags} :去除html标记  <p>商品</p><div>100.00</div>  商品  100.00
{$var|truncate:30:”…”} :截取字符串
{$var|upper} :大写
{$var|wordwrap:30:”<br>”} :行宽约束 
Var字符串每隔30个字符就换行
如果到了30个字符,但一个单词未完,那么必须将该单词输出完毕才可以换行
 

 
变量调节器的组合使用
{$var |capitalize |truncate:30:”…”|replace:”aa”:”bb”}
1、 首先将var变量首字母大写
2、 截取30个长度
3、 将之后的字符串中的aa替换bb
四、内建函数
1、 capture
语法:
{capture name=‘var’}    name表示将内容保存到指定的变量中
内容
{/capture}
捕获函数之间的内容,而不是输出
输出格式:
{$smarty.capture.var}
2、 config_load 
{config_load file=“file”section=“section”}
加载配置文件
File:要加载的配置文件名称
Section:要加载的配置节
关于配置文件中的变量有以下两种引用方式:
{#var#}
{$smarty.config.var}
3、 foreach,foreachelse
{foreach from=数组 key=键 name=名称 item=内容 } 
{foreachelse} 
{/foreach}
foreach函数用于遍历数组
foreachelese函数表示当数组没有任何数据时执行的代码
From:要遍历的数组
Key:遍历到的数组下标
Item:遍历到的数组元素值
Name:为当前的foreach命名
foreach 的内置变量
$smarty.foreach.name.index :索引    从0开始排列
$smarty.foreach.name.iteration :第几次  从1开排列
$smarty.foreach.name.first :如果是第一次执行时为true
$smarty.foreach.name.last :如果是最后一次执行时为true
$smarty.foreach.name.total :循环总次数
foreach 的内置变量   3.0
{foreach $myarray as $key => $value}
{$value@iteration} 当前循环是第几次
{$value@index} 循环索引
{$value@first}第一次循环时为true
{$value@last}最后一次循环时为true
{$value@total}循环总次数
{/foreach} 
 
smarty 循环的使用
 
 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论