|
Thinkphp的IF標(biāo)簽可以用來(lái)定義復(fù)雜的條件判斷,例如:
<if condition="($name eq 1) OR ($name gt 100) "> value1<elseif condition="$name eq 2" />value2<else /> value3</if>
注意:在condition屬性中可以支持eq等判斷表達(dá)式 ,同上面的比較標(biāo)簽,但是不支持帶有”>”、”<”等符號(hào)的用法,因?yàn)闀?huì)混淆模板解析,所以下面的用法是錯(cuò)誤的:
<if condition="$id < 5 "> value1<else /> value2</if>
必須改成:
<if condition="$id lt 5 "> value1<else /> value2</if>
除此之外,我們可以在condition屬性里面使用php代碼,例如:
<if condition="strtoupper($user['name']) neq 'THINKphp' "> Thinkphp<else /> other Framework</if>
condition屬性可以支持點(diǎn)語(yǔ)法和對(duì)象語(yǔ)法,例如自動(dòng)判斷user變量是數(shù)組還是對(duì)象:
<if condition="$user.name neq 'Thinkphp' "> Thinkphp<else /> other Framework</if>
或者知道user變量是對(duì)象
<if condition="$user:name neq 'Thinkphp' "> Thinkphp<else /> other Framework</if>
注意:由于if標(biāo)簽的condition屬性里面基本上使用的是php語(yǔ)法,盡可能使用判斷標(biāo)簽和Switch標(biāo)簽會(huì)更加簡(jiǎn)潔,原則上來(lái)說,能夠用switch和比較標(biāo)簽解決的盡量不用if標(biāo)簽完成。因?yàn)閟witch和比較標(biāo)簽可以使用變量調(diào)節(jié)器和系統(tǒng)變量。如果某些特殊的要求下面,IF標(biāo)簽仍然無(wú)法滿足要求的話,可以使用原生php代碼或者php標(biāo)簽來(lái)直接書寫代碼。
php技術(shù):ThinkPHP模板IF標(biāo)簽用法詳解,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。