激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - php smarty模板引擎的6個小技巧

php smarty模板引擎的6個小技巧

2020-06-24 14:44PHP從入門到精通 PHP教程

php smarty模板引擎中幾個經常被忽略的但比較有用的標簽整理,包括capture標簽,config_load標簽,php標簽,strip標簽,fetch標簽,以及如何在smarty模板中直接使用define定義的常量

下面本文將以具體的例子一一分析:

capture標簽

capture的中文意思是抓取,它的作用是抓取模板輸出的數據,當我們需要它的時候,調用它,以得到抓取數據的目的。如下例子:

復制代碼 代碼如下:


{capture name="test"}

 

<img src="testimg.jpg">

{/capture}

<div class="image">

{$smarty.capture.test}

</div>

 

說明:在{capture name="test"}和{/capture}之間的內容被存儲到變量$test中,該變量由name屬性指定.在模板中通過 $smarty.capture.test 訪問該變量.如果沒有指定name 屬性,函數默認將使用"default" 作為參數,這一點類似Jquery中的clone方法。

config_load標簽

config_load可以直接將文件中的內容讀取出來,這樣可以省掉assign這一步,如下使用示例:

test.csv 文件:

復制代碼 代碼如下:


pageTitle = "config_load_test"

 

bodyBgColor = "#eeeeee"

img = "girl.jpg"

width="100"

height="100"

 

則模板 index.tpl 文件中可以如下引用以上 test.csv 文件:
 

復制代碼 代碼如下:

{config_load file="test.csv"}
<html>
<title>{#pageTitle#}</title>
<body bgcolor="{#bodyBgColor#}">
<img src="{#img#}" width="{#width#}" height="{#height#}">
</body>
</html>

 

注:上述過程中如果出現這樣的問題Warning: Smarty error: unable to read resource, 請查看一下,你的test.csv是不是放在smarty的配置目錄中,默認配置目錄是configs 目錄。

php標簽

 當你習慣了assign后,你有沒有想過,在模板文件里面直接寫php代碼呢,雖然非常不建議這么做,但有時候迫于業務的需求不得不這樣干的時候該腫么辦呢?看看下面這個例子:

復制代碼 代碼如下:

{php}

 

global $result;

foreach($result as $key=>$value){

    echo "key=$key,value=>$value<br>";

}

{/php}

 

strip標簽

strip標簽的作用是去除標簽內的空格和回車,我自己感覺這個標簽還是挺有用的,可以壓縮最終輸出的html格式,想要看效果的話,看看本站的源代碼就知道了,是不是很酷,呵呵:

復制代碼 代碼如下:


{strip}

 

<div>

    <font color="red">strip</font>

    <span>

        <div>php smarty strip 壓縮html輸出,www.phpernote.com 看源碼效果</div>

    </span>

</div>

{/strip}



fetch標簽

 

fetch標簽和php里面的函數 file_get_contents 功能差不多,都可以把文件中的內容讀出來,并且可以將讀出來的結果以字符串的形式賦值給某個變量,如下使用案例:

復制代碼 代碼如下:


{fetch file="./aaaa.txt" assign="result"}

 

{if is_array($result)}

<b>is array</b>

{else if}

<b>not array</b>

{/if}

 

 

使用常量

在php中使用 define 定義的常量可以在smarty模板中直接使用

使用方法如下:

 

復制代碼 代碼如下:

{$smarty.const.你定義的常量名}

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 正在播放91精 | 欧美在线成人影院 | 射逼网站 | 亚洲国产精品久久久久久久久久 | 欧美精品色精品一区二区三区 | 欧美一区在线观看视频 | 婷婷久久综合九色综合色多多蜜臀 | 亚洲精久久 | 性明星video另类hd | 日本看片一区二区三区高清 | 国产免费一级大片 | 精品影视一区二区 | 97porn| 九九视频精品在线 | 91九色国产视频 | 欧美性受xxxx人人本视频 | 午夜九九九 | 成人午夜一区 | 国产精品视频yy9299一区 | 国产精品视频二区不卡 | 亚洲最大av网站 | 久久成人在线观看 | 国产一级一国产一级毛片 | 91精品动漫在线观看 | 99亚洲伊人久久精品影院红桃 | 欧美精品一级片 | 毛片免费观看视频 | 线观看免费完整aaa 欧美在线一级 | 国产精品久久久久久久亚洲按摩 | 91精品视频免费 | 精品免费在线视频 | 亚洲精品在线观看免费 | 久久久国产电影 | 国产精品久久久久久久久久 | 国产噜噜噜噜噜久久久久久久久 | 久久免费视频7 | 久久久久久久久久亚洲 | 国产毛片网站 | 一级免费黄视频 | 欧美交在线| 99激情 |