您好,登錄后才能下訂單哦!
怎么在smarty模板引擎中自定義函數(shù)?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
輸出 times 次 con的內(nèi)容(輸出4次hello world)
代碼如下:
<?php
//創(chuàng)建smarty對象
require_once("./libs/Smarty.class.php");
$smarty = new Smarty();
//自定義一個函數(shù)
//說明:(1)、$arr為一個數(shù)組;(2)、tpl調(diào)用形式{test times="4" size="5" con="hello,world" color="red"}
function test($arr){
$str = "";
for($i=0;$i<$arr['times'];$i++){
$str .= "<font size='".$arr['size']."' color='".$arr['color']."'>".$arr['con']."</font>";
}
return $str;
}
//注冊函數(shù) registerPlugin
$smarty->registerPlugin("function","test","test");//第二個參數(shù)是模板文件調(diào)用的函數(shù)名稱,可變;第三個參數(shù)是上面自定義的函數(shù)名稱;相應(yīng)于一個對應(yīng)關(guān)系
$smarty->display("temp.tpl");
?>
模板文件:temp.tpl
<html> <h3>smarty自定義函數(shù)的使用</h3> {test times="3" con="hello world" size="3" color="green"} </html>
注意:smarty 3.1.8 已經(jīng)不支持注冊函數(shù) register_function,應(yīng)換成 registerPlugin
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注億速云行業(yè)資訊頻道,感謝您對億速云的支持。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。