value1"/> value1">

首頁 >後端開發 >php教程 >ThinkPHP中if用法實例詳解

ThinkPHP中if用法實例詳解

伊谢尔伦
伊谢尔伦原創
2017-06-24 15:14:102356瀏覽

ThinkPHP的IF標籤可以用來定義複雜的條件判斷,例如:

<if condition="($name eq 1) OR ($name gt 100) "> value1
<elseif condition="$name eq 2" />value2
<else /> value3
</if>

注意:在condition屬性中可以支持eq等判斷表達式 ,同上面的比較標籤,但是不支持帶有”>”、”<”等符號的用法,因為會混淆範本解析,所以下面的用法是錯誤的:

<if condition="$id < 5 "> value1
<else /> value2
</if>

必須改成:

<if condition="$id lt 5 "> value1
<else /> value2
</if>

除此之外,我們可以在condition屬性裡面使用php程式碼,例如:

<if condition="strtoupper($user[&#39;name&#39;]) neq &#39;THINKPHP&#39; "> ThinkPHP
<else /> other Framework
</if>

condition屬性可以支援點語法和物件語法,例如自動判斷user變數是陣列還是物件:

<if condition="$user.name neq &#39;ThinkPHP&#39; "> ThinkPHP
<else /> other Framework
</if>

或知道user變數是物件

<if condition="$user:name neq &#39;ThinkPHP&#39; "> ThinkPHP
<else /> other Framework
</if>

注意:由於if標籤的condition屬性裡面基本上使用的是php語法,盡可能使用判斷標籤和Switch標籤會更加簡潔,原則上來說,能夠用switch和比較標籤解決的盡量不用if標籤完成。因為switch和比較標籤可以使用變數調節器系統變數。如果某些特殊的要求下面,IF標籤仍然無法滿足要求的話,可以使用原生php程式碼或PHP標籤來直接書寫程式碼

以上是ThinkPHP中if用法實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn