麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > PHP > 正文

smarty中常用方法實例總結

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

這篇文章主要介紹了smarty中常用方法,較為詳細的分析了smarty模板中較為常用的方法、屬性及環境變量等使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例總結了smarty中常用方法。分享給大家供大家參考。具體如下:

1. Smarty中foreach的index、iteration的使用

.index包含當前數組索引,從零開始。

index示例

 

 
  1. {* The header block is output every five rows *} 
  2. {* 每五行輸出一次頭部區塊 *} 
  3. <table> 
  4. {foreach from=$items key=myId item=i name=foo} 
  5. {if $smarty.foreach.foo.index % 5 == 0} 
  6. <tr><th>Title</th></tr> 
  7. {/if
  8. <tr><td>{$i.label}</td></tr> 
  9. {/foreach} 
  10. </table> 

.iteration包含當前循環次數,與index不同,從1開始,每次循環增長1。

iteration和index示例

 

 
  1. {* this will output 0|1, 1|2, 2|3, ... etc *} 
  2. {* 該例將輸出0|1, 1|2, 2|3, ... 等等 *} 
  3. {foreach from=$myArray item=i name=foo} 
  4. {$smarty.foreach.foo.index}|{$smarty.foreach.foo.iteration}, 
  5. {/foreach} 

2. smarty中section的嵌套使用

示例1:

 

 
  1. $bookmarks = array('0' => array('name'=> 'n1''url'=>'url2'), '1' => array('name'=> 'n21''url'=>'url22')); 
  2. $categories= array('0' => array('cate_id'=> 'n1''cate_name'=>'url2'), '1' => array('cate_id'=> 'n21''cate_name'=>'url22')); 
  3. {section name='bm' loop=$bookmarks} 
  4. Name:$bookmarks[bm].name 
  5. URL:$bookmarks[bm].url 
  6. {section name='cate' loop=$categories[bm]} 
  7. $categories[bm][cate].cate_id 
  8. $categories[bm][cate].cate_name 
  9. {/section} 
  10. {/section} 
  11. :::: 

示例2:

 

 
  1. $lists = array(); 
  2. for(...){ 
  3. $oneList['dateTime'] = date("Y-m-d"); 
  4. $oneList['detailList'] = array(); 
  5. for(....){ 
  6. $oneList['detailList'][$j]['count'] = $onecout; 
  7. $oneList['detailList'][$j]['title'] = $onetitle; 
  8. $lists[] = $oneList; 
  9. ::::: 
  10. {section name=loop loop=$lists} 
  11. {$lists[loop].dateTime} 
  12. {section name=loop2 loop=$lists[loop]["detailList"]} 
  13. {$lists[loop]['detailList'][loop2].title} 
  14. {$lists[loop]["detailList"][loop2].count} 
  15. {/section} 
  16. {/section} 

3. 其他常用關鍵字

<{section loop= $varName[,start=$start,step=$setp,max=$max,$show=true]}>

name: section的名稱,不用加$;

$loop: 要循環的變量,程度中要使用assign對這個變量進行操作。

$start: 開始循環的下標。默認為0;

$step: 每次循環下標的增數;

$show : boolean型。決定是否對于這塊進行顯示。默認為true;

<{section}>的屬性;

index:循環下標。默認為0;

index_prev:當前下標的上一個值,默認為-1;

index_next:當前下標的下一個值,默認為1;

first:是否為第一下循環;

last:是否為最后一個循環;

iteration:循環個數;

rownum:當前行號,iteration的別名;

loop:最后一個循環號。Section的循環次數;

show:是否顯示;

 

 
  1. <{section loop=$News}> 
  2. 新聞編號:<{$News[loop].newID}><br> 
  3. 新聞內容:<{$News[loop].newTitle}><br> 
  4. <{sectionelse}> 
  5. I am sorry 
  6. <{/section}> 

if用法:

 

 
  1. {if $list[row].name eq "1"
  2. 星期1 
  3. {elseif $list[row].name=="2"
  4. 星期2 
  5. {else
  6. 默認 
  7. {/if

4. smarty 系統變量

{* 顯示URL中的page值($_GET)http://www.example.com/index.php?page=foo *}

{$smarty.get.page}

{* 顯示來自一個表單的"page"變量($_POST['page'])*}

{$smarty.post.page}

{* 顯示COOKIE變量"username"的值($_COOKIE['username'])*}

{$smarty.cookies.username}

{* 顯示服務器變量"SERVER_NAME"($_SERVER['SERVER_NAME'])*}

{$smarty.server.SERVER_NAME}

{$smarty.server.PHP_SELF}

{$smarty.server.SCRIPT_NAME}

{* 顯示系統環境變量"PATH" *}

{$smarty.env.PATH}

{* 顯示PHP會話變量"id"($_SESSION['id'])*}

{$smarty.session.id}

{* 顯示變量"username",不論來自get/post/cookies/server/env *}

{$smarty.request.username}

$smarty}保留變量可以被用于訪問一些特殊的模板變量,以下是全部頁面請求變量。

以下是訪問頁面請求變量諸如get,post,cookies,server,enviroment和session變量的例子. 例如{$smarty.server.SERVER_NAME}取得服務器變量,{$smarty.env.PATH}取得系統環境變量path,{$smarty.request.username}取得get/post/cookies/server/env的復合變量。

{$smarty.now}變量用于訪問當前時間戳.

可以用 date_format調節器格式化輸出. 例如{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}

{$smarty.const}

你可以直接訪問PHP常量. 例如{$smarty.const._MY_CONST_VAL}

{$smarty.capture}

可以通過{capture}..{/capture}結構 截取的輸出可以使用{$smarty} 變量訪問.

{$smarty.config}

{$smarty}變量 可以訪問已經加載的config變量.

例如 {$smarty.config.foo}就可以表示 {#foo#}.

{$smarty.section}, {$smarty.foreach}

{$smarty} 變量可以訪問'section'和'foreach'循環的屬性.

{$smarty.template}

顯示當前被處理的模板的名字.

{$smarty.version}

顯示smarty模板的版本

{$smarty.ldelim}

顯示左分隔符

{$smarty.rdelim}

顯示右分隔符$smarty}保留變量可以被用于訪問一些特殊的模板變量,以下是全部頁面請求變量。

以下是訪問頁面請求變量諸如get,post,cookies,server,enviroment和session變量的例子. 例如{$smarty.server.SERVER_NAME}取得服務器變量,{$smarty.env.PATH}取得系統環境變量path,{$smarty.request.username}取得get/post/cookies/server/env的復合變量。

{$smarty.now}變量用于訪問當前時間戳.

可以用 date_format調節器格式化輸出. 例如{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}

{$smarty.const}

你可以直接訪問PHP常量. 例如{$smarty.const._MY_CONST_VAL}

{$smarty.capture}

可以通過{capture}..{/capture}結構 截取的輸出可以使用{$smarty} 變量訪問.

{$smarty.config}

{$smarty}變量 可以訪問已經加載的config變量.

例如 {$smarty.config.foo}就可以表示 {#foo#}.

{$smarty.section}, {$smarty.foreach}

{$smarty} 變量可以訪問'section'和'foreach'循環的屬性.

{$smarty.template}

顯示當前被處理的模板的名字.

{$smarty.version}

顯示smarty模板的版本

{$smarty.ldelim}

顯示左分隔符

{$smarty.rdelim}

顯示右分隔符

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91香蕉影视 | 91精品国产综合久久婷婷香 | 毛片在线免费观看完整版 | 精品国产一二区 | 第一区免费在线观看 | 羞羞视频免费网站 | 在线中文字幕不卡 | av在线免费观看网站 | 精品一区二区中文字幕 | 久色成人 | 午夜激情视频免费 | 羞羞草视频 | 国产成人精品午夜视频' | 91久久久久久久久久久久久久 | 免费毛片视频 | 久久777国产线看观看精品 | 欧美重口另类videos人妖 | 黄色高清免费网站 | 一级美女大片 | 欧美不卡 | 国产免费一区二区三区网站免费 | 欧美日韩亚洲在线观看 | 亚洲自拍第一 | www.91sese| 少妇色诱麻豆色哟哟 | 国产亚洲精品久久久久婷婷瑜伽 | 国产一区免费观看 | 欧美日本一区二区 | 韩国一级免费视频 | 13一14毛片免费看 | 关键词| xxxx hd video 69 | 久久久久久久久久久高潮一区二区 | 欧美视频在线观看一区 | 色淫视频| 国产品久久 | 91成人影院 | 色婷婷av一区二区三区久久 | 国产精品麻豆一区二区三区 | 欧美一区二区三区不卡免费观看 | 美女性感毛片 |