您好,登錄后才能下訂單哦!
如何正確的使用Smarty變量?相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。
1. 從PHP分配的變量
調(diào)用從PHP分配的變量需在前加"$"符號(hào).(譯注:同php一樣)
調(diào)用模板內(nèi)的assign函數(shù)分配的變量也是這樣.(譯注:也是用$加變量名來(lái)調(diào)用)
示例:
index.php:
$smarty = new Smarty; $smarty->assign('firstname', 'Doug'); $smarty->assign('lastLoginDate', 'January11th, 2001'); $smarty->display('index.tpl');
index.tpl:
Hello {$firstname}, glad to see you couldmake it. <p> Your last login was on {$lastLoginDate}.
輸出:
Hello Doug, glad to see you could make it. <p> Your last login was on January 11th, 2001.
2. 從配置文件讀取的變量
配置文件中的變量需要通過(guò)用兩個(gè)"#"或者是smarty的保留變量 $smarty.config.來(lái)調(diào)用(后面會(huì)講到)
第二種語(yǔ)法在變量作為屬性值并被引號(hào)括住的時(shí)候非常有用.
(譯注:舉個(gè)例子 {include file="#includefile#"} 這樣#includefile#將被當(dāng)作字符處理,而不表示配置文件變量,但可以這樣表示{include file="`$smarty.config.includefile`"}不要忘了加``)
示例:
foo.conf:
pageTitle = "This is mine" bodyBgColor = "#eeeeee" tableBorderSize = "3" tableBgColor = "#bbbbbb" rowBgColor = "#cccccc"
index.tpl:
{config_load file="foo.conf"} <html> <title>{#pageTitle#}</title> <body bgcolor="{#bodyBgColor#}"> <table border="{#tableBorderSize#}" bgcolor="{#tableBgColor#}"> <tr bgcolor="{#rowBgColor#}"> <td>First</td> <td>Last</td> <td>Address</td> </tr> </table> </body> </html>
index.tpl:
{config_load file="foo.conf"} <html> <title>{$smarty.config.pageTitle}</title> <body bgcolor="{$smarty.config.bodyBgColor}"> <table border="{$smarty.config.tableBorderSize}"bgcolor="{$smarty.config.tableBgColor}"> <tr bgcolor="{$smarty.config.rowBgColor}"> <td>First</td> <td>Last</td> <td>Address</td> </tr> </table> </body> </html>
上述兩種模板寫(xiě)法都輸出:
<html> <title>This is mine</title> <body bgcolor="#eeeeee"> <table border="3" bgcolor="#bbbbbb"> <tr bgcolor="#cccccc"> <td>First</td> <td>Last</td> <td>Address</td> </tr> </table> </body> </html>
看完上述內(nèi)容,你們掌握如何正確的使用Smarty變量的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。