smarty模板引擎之內建函數用法_PHP教程

來源:互聯網
上載者:User

smarty模板引擎之內建函數用法


這篇文章主要介紹了smarty模板引擎之內建函數用法,執行個體分析了smarty中foreach函數、if...else...、if...elseif...elseif...else...等內建函數的使用方法,具有一定參考借鑒價值,需要的朋友可以參考下

本文執行個體講述了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


<{foreach from=$arr item=temp}>

<{$temp}>

<{/foreach}>


關聯陣列:

<{foreach from=$arr2 item=temp key=k}>

<{$k}>=<{$temp}>

<{/foreach}>


備忘: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


二維索引數組:

<{foreach from=$arr3 item=temp key=k}>

<{*這裡的temp是一個數組*}>

<{foreach from=$temp item=val}>

<{$val}>

<{/foreach}>

<{/foreach}>


二維關聯陣列格式1:

<{foreach from=$arr4 item=temp}>

<{*外層的鍵不需要,所以不添加key*}>

<{foreach from=$temp item=val key=k}>

<{*內層的鍵需要,添加key*}>

<{$k}>=<{$val}>

<{/foreach}>

<{/foreach}>


二維關聯陣列格式2:

<{foreach from=$arr5 item=temp key=k}>

<{$k}>:

<{foreach from=$temp item=val key=k2}>

<{$k2}>=<{$val }>

<{/foreach}>


<{/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}>,年齡比較大了

<{/if}>

<{/foreach}

希望本文所述對大家的php程式設計有所協助。

http://www.bkjia.com/PHPjc/976541.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/976541.htmlTechArticlesmarty模板引擎之內建函數用法 這篇文章主要介紹了smarty模板引擎之內建函數用法,執行個體分析了smarty中foreach函數、if...else...、if...elseif...else...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.