Smarty屬性

2020-11-02 11:09 更新

大多數(shù)函數(shù)都會使用屬性來定義或者修改它們的行為。 Smarty 函數(shù)中的屬性比較像 HTML 語法中的屬性。 靜態(tài)值不需要引號引起來,但必須是純字符串。 帶或不帶修飾器的變量都可以使用,而且也不需要引號, 甚至可以使用 PHP 函數(shù)的結(jié)果,插件結(jié)果和復(fù)雜的表達式。

一些屬性要求布爾值(TRUE 或 FALSE)。 它們可以直接寫成true 和 false。 如果屬性沒有被賦值,那么它會將 ?true? 作為默認值。

Example 3.4. 函數(shù)屬性語法

{include file="header.tpl"}

{include file="header.tpl" nocache}  // 等同于 nocache=true

{include file="header.tpl" attrib_name="attrib value"}

{include file=$includeFile}

{include file=#includeFile# title="My Title"}

{assign var=foo value={counter}}  // 插件結(jié)果

{assign var=foo value=substr($bar,2,5)}  // PHP函數(shù)結(jié)果

{assign var=foo value=$bar|strlen}  // 使用修飾器

{assign var=foo value=$buh+$bar|strlen}  // 復(fù)雜的表達式

{html_select_date display_days=true}

{mailto address="smarty@example.com"}

<select name="company_id">
  {html_options options=$companies selected=$company_id}
</select>

  

溫馨提示:

雖然 Smarty 可以處理很復(fù)雜的表達式和語法,但是最好的方式還是 保持模板語法的簡潔,模板層專注于顯示。 如果發(fā)現(xiàn)你的模板語法過于復(fù)雜,那么建議是將這些邏輯代碼寫到 PHP 里, 然后在模板中通過插件或者修飾器來調(diào)用。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號