本文实例讲述了smarty内建函数的使用方法。分享给大家供大家参考。具体如下:
in-build(内建),在smarty模板中,提供了很多内建的函数库,具体使用可以参考smarty中文手册chm版本。
1.foreach函数
操作数组如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
//索引数组 $res = array ( '上海' , '北京' , '深圳' ); $smarty ->assign( "arr" , $res ); //关联数组 $res2 = array ( 'city1' => '北京' , 'city2' => '广州' , 'city3' => '湖南' ); $smarty ->assign( "arr2" , $res2 ); //索引二维数组 $res3 = array ( array ( '潇晓' , '常山' , '吴蓓' ), array ( '珊珊' , '常明' ) ); $smarty ->assign( "arr3" , $res3 ); //关联二维数组 $res4 = array ( array ( 'id' => '001' , 'name' => '张三' , 'email' => 'zhangsan@1163.com' ), array ( 'url' => 'http://www.baidu.com' , 'age' => '28' ) ); $smarty ->assign( "arr4" , $res4 ); //关联二维数组2 $res5 = array ( 'emp1' => array ( 'id' => '001' , 'name' => '张三' , 'email' => 'zhangsan@1163.com' ), 'emp2' => array ( 'url' => 'http://www.baidu.com' , 'age' => '28' ) ); $smarty ->assign( "arr5" , $res5 ); |
遍历数组:
其中from、item、key是固定写法,key可以根据需求加
一维数组
索引数组:
1
2
3
4
5
6
7
8
9
|
<br/> <{ foreach from= $arr item=temp}> <{ $temp }> <t/> <{/ foreach }> <br/>关联数组:<br/> <{ foreach from= $arr2 item=temp key=k}> <{ $k }>=<{ $temp }><t/> <{/ foreach }> <br/> |
备注:from、item、key是固定的
二维数组
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
<br/>二维索引数组:<br/> <{ foreach from= $arr3 item=temp key=k}> <{*这里的temp是一个数组*}> <{ foreach from= $temp item=val}> <{ $val }> <{/ foreach }> <{/ foreach }> <br/>二维关联数组格式1:<br/> <{ foreach from= $arr4 item=temp}> <{*外层的键不需要,所以不添加key*}> <{ foreach from= $temp item=val key=k}> <{*内层的键需要,添加key*}> <{ $k }>=<{ $val }> <{/ foreach }> <{/ foreach }> <br/>二维关联数组格式2:<br/> <{ foreach from= $arr5 item=temp key=k}> <{ $k }>: <{ foreach from= $temp item=val key=k2}> <{ $k2 }>=<{ $val }> <{/ foreach }> <br/> <{/ foreach }> |
2.if...else...
1
2
3
4
5
|
<{ if $age >10 }> 年龄大于10,年龄为:<{ $age }> <{ else }> 年龄小于10,年龄为:<{ $age }> <{/ if }> |
3.if...elseif...elseif...else...
已知数据源如下:
1
2
3
4
5
6
|
$res4 = array ( array ( 'id' => '001' , 'age' => '4' ), array ( 'id' => '002' , 'age' => '16' ), array ( 'id' => '003' , 'age' => '20' ), array ( 'id' => '004' , 'age' => '80' ) ); |
模板中引用如下:
1
2
3
4
5
6
7
8
9
10
11
|
<{ foreach from= $arr4 item=temp }> <{ if $temp .age < 5}> <{ $temp .id}>,你是小孩 <{ elseif $temp .age >=5 and $temp .age <= 18}> <{ $temp .id}>,你是年轻人 <{ elseif $temp .age > 18 and $temp .age <= 50}> <{ $temp .id}>,你是成年人 <{ else }> <{ $temp .id}>,年龄<span style= "font-family:Consolas;" >比较大了</span> <{/ if }> <{/ foreach } |
希望本文所述对大家的php程序设计有所帮助。