W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
{eval}
可以執(zhí)行變量顯示。它可用于執(zhí)行模板變量中的標(biāo)簽/變量, 或者來自于配置文件的標(biāo)簽/變量。
如果你提供了assign
屬性, {eval}
函數(shù)的輸出將不會顯示,而是賦值給模板變量。
參數(shù)名稱 | 類型 | 必選參數(shù) | 默認(rèn)值 | 說明 |
---|---|---|---|---|
var | mixed | Yes | n/a | 需要執(zhí)行的變量或字符串 |
assign | string | No | n/a | 用于賦值的變量名 |
執(zhí)行變量的方式和執(zhí)行模板一樣,使用與模板相同的解析方式和安全機制。
執(zhí)行變量的操作將在每次編譯的時候都會啟動,編譯版本的程序不會被保存! 然而如果你開啟了緩存設(shè)置,那么 模板的其余部分會被緩存。
如果執(zhí)行的內(nèi)容不會經(jīng)常變化,或者被多次使用,可以考慮使用{include file="string:{$template_code}"}
來代替。 這可以在編譯后被緩存(速度更快),而且也不會每次編譯都執(zhí)行。
Example 8.3. {eval}
這里有個配置文件,setup.conf
.
emphstart = <strong> emphend = </strong> title = Welcome to {$company}'s home page! ErrorCity = You must supply a {#emphstart#}city{#emphend#}. ErrorState = You must supply a {#emphstart#}state{#emphend#}.
模板:
{config_load file='setup.conf'} {eval var=$foo} {eval var=#title#} {eval var=#ErrorCity#} {eval var=#ErrorState# assign='state_error'} {$state_error}
將輸出:
This is the contents of foo. Welcome to Foobar Pub & Grill's home page! You must supply a <strong>city</strong>. You must supply a <strong>state</strong>.
Example 8.4. 另一個{eval}例子
例子將顯示服務(wù)器名稱(大寫字母)和IP。 賦值的$str
可以是來自于數(shù)據(jù)庫的查詢。
<?php $str = 'The server name is {$smarty.server.SERVER_NAME|upper} ' .'at {$smarty.server.SERVER_ADDR}'; $smarty->assign('foo',$str); ?>
模板是:
{eval var=$foo}
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: