亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

smarty循環嵌套用法示例分析

2024-05-04 23:48:25
字體:
來源:轉載
供稿:網友

本文實例講述了smarty循環嵌套用法。分享給大家供大家參考,具體如下:

test3.php:

<?phprequire "main.php";$forum = array(    array("category_id" => 1, "category_name" => "公告區",      "topic" => array(        array("topic_id" => 1, "topic_name" => "站務公告")      )    ),    array("category_id" => 2, "category_name" => "文學專區",      "topic" => array(        array("topic_id" => 2, "topic_name" => "好書介紹"),        array("topic_id" => 3, "topic_name" => "奇文共賞")      )    ),    array("category_id" => 3, "category_name" => "電腦專區",      "topic" => array(        array("topic_id" => 4, "topic_name" => "硬件周邊"),        array("topic_id" => 5, "topic_name" => "軟件討論")      )    ));$tpl->assign("forum", $forum);$tpl->display("test3.htm");?>

樣版的寫法如下:

templates/test3.htm:

<html><head><title>循環嵌套測試</title></head><body><table width="200" border="0" align="center" cellpadding="3" cellspacing="0">  <{section name=sec1 loop=$forum}>  <tr>    <td colspan="2"><{$forum[sec1].category_name}></td>  </tr>  <{section name=sec2 loop=$forum[sec1].topic}>  <tr>    <td width="25"> </td>    <td width="164"><{$forum[sec1].topic[sec2].topic_name}></td>  </tr>  <{/section}>  <{/section}></table></body></html>

test2.php:

<?phprequire_once('./include/db_fns.php');include_once("./Smarty/libs/Smarty.class.php"); //包含Smarty類文件$smarty = new Smarty(); //建立Smarty實例對象$Smarty$smarty->template_dir = "./templates/dedecms";//設置模板目錄$smarty->compile_dir = "templates/templates_c"; //設置編譯目錄$smarty->assign("template_url", "./");$smarty->assign("$site_url", "http://www.49028c.com/");$smarty->assign("$site_name", "文章管理系統");$smarty->left_delimiter = "<{"; //設置左邊界符$smarty->right_delimiter = "}>"; //設置右邊界符$db_conn = db_connect();$query = "SELECT cat_ID,cat_name FROM categories ORDER BY cat_ID DESC";$result = mysql_query($query);$i = 5;while(($row = mysql_fetch_array($result)) && $i > 0){        $query2="SELECT ID, post_title, post_date                FROM post                WHERE post.post_category =$row[cat_ID]                AND post_status <> 'unpbulish'                ORDER BY post_date DESC";        $result2=mysql_query($query2);        $i = 5;         while(($row2 = mysql_fetch_array($result2)) && $i > 0)        {            $row2[post_date]=date('m-d',strtotime($row2[post_date]));            $category = array("cat_ID"=>"$row[cat_ID]","cat_name"=>"$row[cat_name]",            "post"=>array("ID"=>"$row2[ID]",            "post_title"=>"$row2[post_title]" ,            "post_category"=>"$row2[post_category]" ,            "post_date"=>"$row2[post_date]"));            $i--;        }}$smarty->assign("forum", $category);$smarty->display("test2.htm");?>

test2.htm:

<html>  <head>  <title>嵌套循環測試</title>  </head>  <body>  <table width="200" border="0" align="center" cellpadding="3" cellspacing="0">  <{section name=sec1 loop=$forum}>      <tr>      <td colspan="2"><{$forum[sec1].cat_id}></td>      </tr>        <{section name=sec2 loop=$forum[sec1].post}>          <tr>          <td width="25"> </td>          <td width="164"><{$forum[sec1].post[sec2].post_title}></td>          </tr>        <{/section}>  <{/section}>  </table></body></html>

test4.php:

<?phprequire "main.php";$my_array = array(array("value" => "0"),array("value" => "1"),array("value" => "2"),array("value" => "3"),array("value" => "4"),array("value" => "5"),array("value" => "6"),array("value" => "7"),array("value" => "8"),array("value" => "9"));$tpl->assign("my_array", $my_array);$tpl->display('test4.htm');?>

模版的寫法如下:

templates/test4.htm:

<html><head><title>橫向重復表格測試</title></head><body><table width="500" border="1" cellspacing="0" cellpadding="3"><tr><{section name=sec1 loop=$my_array}><td><{$my_array[sec1].value}></td><{if $smarty.section.sec1.rownum is div by 2}></tr><tr><{/if}><{/section}></tr></table></body></html>

重點在于 $smarty.section.sec1.rownum 這個 Smarty 變量,在 section 循環中這個變量會取得從 1 開始的索引值,所以當 rownum 能被 2 除盡時,就輸出 </tr><tr> 使表格換列 (注意!是 </tr> 在前面<tr> 在后面) 。因此數字 2 就是我們在一列中想要呈現的資料筆數。各位可以由此去變化其它不同的呈現方式。

運算符有以下這些

eq、ne、neq、gt、lt、lte、le、gte、ge、is even、is odd、is not even、is not odd、not、mod、div by、even by、odd by

示例:

<!--{if $bigsize ge '650'}-->   <img src="photo/<!--{$photo}-->" border="0" width="650" class="product_photo" /><!--{else}-->    <img src="photo/<!--{$photo}-->" border="0" class="product_photo" /><!--{/if}-->

以前不常用smarty,這兩天有個朋友的網站要改;順手用了一下,還是挺有意思的。

關于capture 的說明:

capture函數的作用是收集模板輸出的數據到一個變量里,而不是把它們輸出到頁面. 

任何在   {capture   name="foo"}和{/capture}之間的數據都被收到了由函數的名稱屬性指定的變量里($foo). 

收集的信息可以用在特殊變量$smarty里. 

例如capture.foo就收集了以上數據.如果函數沒有名字屬性,將使用"default". 

每個{capture}都必須對應{/capture},也不能嵌套使用capture函數.

 

希望本文所述對大家基于smarty模板的PHP程序設計有所幫助。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩av中文字幕在线免费观看| 欧美福利视频在线| 亚洲欧美国产一区二区三区| 欧美在线亚洲在线| 欧美又大粗又爽又黄大片视频| 国产精品久久久久久久久久ktv| 中文字幕国产日韩| 日产日韩在线亚洲欧美| 久久伊人色综合| 日韩有码在线视频| 精品久久久中文| 热久久这里只有精品| 午夜精品一区二区三区视频免费看| 国模私拍一区二区三区| 久久99精品久久久久久青青91| 亚洲а∨天堂久久精品喷水| 亚洲欧美精品中文字幕在线| 欧美性黄网官网| 欧美激情xxxx性bbbb| 欧美成人性色生活仑片| 国产一区二区三区免费视频| 久久久久久91香蕉国产| 深夜福利亚洲导航| 国产+成+人+亚洲欧洲| 亚洲一区亚洲二区亚洲三区| 亚洲精品在线观看www| 国产精品网址在线| 一本大道久久加勒比香蕉| 久久久免费在线观看| 欧美放荡办公室videos4k| 午夜精品一区二区三区在线视频| 欧美精品在线播放| 日韩有码在线视频| 国产成+人+综合+亚洲欧美丁香花| 深夜福利日韩在线看| 91免费版网站入口| 久久人人爽亚洲精品天堂| 国产z一区二区三区| 久久99视频精品| 国产精品久久久久久久午夜| 国产久一一精品| 国产精品免费久久久久影院| 亚洲影院色无极综合| 亚洲欧美日韩精品久久奇米色影视| 久久久久久综合网天天| 成人欧美一区二区三区在线湿哒哒| 国产精品久久久av| 亚洲精品一区二区三区婷婷月| 国产精品99久久久久久白浆小说| 久久精品最新地址| 国产精品精品一区二区三区午夜版| 国产一区二区三区在线| 色婷婷综合久久久久| 日本一区二三区好的精华液| 久久99热精品| 欧美日韩在线视频一区| 日韩中文字幕在线视频播放| 亚洲伦理中文字幕| 日韩中文字幕av| 亚洲国产欧美日韩精品| 国产啪精品视频网站| 伊人久久免费视频| 精品人伦一区二区三区蜜桃免费| 久久久久日韩精品久久久男男| 国产亚洲精品91在线| 国产午夜一区二区| 国产精品久久久久久久久久新婚| 欧美成人一区在线| 在线精品国产欧美| 亚洲人精选亚洲人成在线| 成人性生交大片免费观看嘿嘿视频| 久久99国产综合精品女同| 色av中文字幕一区| 国产99视频在线观看| 久操成人在线视频| yw.139尤物在线精品视频| 中文字幕在线精品| 亚洲视频电影图片偷拍一区| 5566成人精品视频免费| 日韩av在线高清| 韩国一区二区电影| 精品欧美激情精品一区| 欧美一区二区三区四区在线| 亚洲精品电影网在线观看| 欧美亚洲另类激情另类| 国产在线不卡精品| 伊人久久久久久久久久久| 国产美女搞久久| 欧美中文字幕视频| 日韩国产在线看| 亚洲女性裸体视频| 日本中文字幕久久看| 91精品视频在线看| 久久国产精品久久精品| 亚洲天堂av在线免费观看| 日本精品视频在线播放| 668精品在线视频| 亚洲国产97在线精品一区| 一区二区三区精品99久久| 欧美激情videoshd| 18性欧美xxxⅹ性满足| 精品久久久av| 国产精品av免费在线观看| 国产精品久久久久一区二区| 久久精视频免费在线久久完整在线看| 成人精品网站在线观看| 日韩中文在线中文网在线观看| 91福利视频网| 精品日韩视频在线观看| 欧美精品videofree1080p| 欧美久久久精品| 久久久久国产视频| 日韩免费观看在线观看| 日韩久久午夜影院| 亚洲国产精品小视频| 日本电影亚洲天堂| 日韩在线观看精品| 久久琪琪电影院| 成人两性免费视频| 57pao国产成人免费| 欧美精品在线看| 亚洲中国色老太| 色综合视频一区中文字幕| 日韩动漫免费观看电视剧高清| 亚洲欧洲国产一区| 亚洲电影成人av99爱色| 日韩精品在线观| 91av在线免费观看| 亚洲欧美精品中文字幕在线| 91精品视频免费| 国产精品久久久久av| 欧美精品videos另类日本| 91极品视频在线| 国内偷自视频区视频综合| 久久国产精品电影| 91色精品视频在线| 国产精品日日摸夜夜添夜夜av| 久久精品国产亚洲精品2020| 国产精品亚洲第一区| 97国产成人精品视频| 日韩免费在线看| 91免费精品国偷自产在线| 大胆人体色综合| 亚洲第一页中文字幕| 亚洲欧美资源在线| 两个人的视频www国产精品| 色综合男人天堂| 久久久久久一区二区三区| 欧美高清不卡在线| 久久中文字幕视频| 国产偷亚洲偷欧美偷精品| 色av中文字幕一区| 欧美久久精品午夜青青大伊人| 最近2019年手机中文字幕| 欧美孕妇毛茸茸xxxx| 久久天堂电影网| 亚洲精品动漫100p| 久久噜噜噜精品国产亚洲综合| 国产精品精品久久久久久| 国产精品av在线播放| 91美女片黄在线观| 免费av在线一区| 欧美小视频在线观看| 91久久久久久|