生活随笔
收集整理的這篇文章主要介紹了
smarty中的内建函数(二)if、section
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
接smarty中的內建函數(一)
7、if,elseif,else
主要根據條件來決定處理的方式
[php] ?view plaincopy print?
$role ?=? '1' ;?? $smarty ->assign( 'role' , $role );?? [html] ?view plaincopy print?
< {if?$ role ?=='1'} > ?? role_1?? < {elseif?$ role ?==?2} > ?? role_2?? < {else} > ?? no_role?? < {/if} > ?? 結果:role_1
eq(相等)、ne(不相等)、neq(不相等)、gt(大于)、lt(小于)、lte(小于等于)、le(小于等于)、gte(大于等于)、ge(大于等于)、is even(是否是偶數)、is odd(是否是奇數)、is not even(是否是偶數)、is not odd(是否是奇數)、not(非/反)、mod(求模)、div by($a/$b整除)、even by($a/$b%2==0,相除再判斷是否是偶數)、odd by(相除再判斷是否是奇數)、===(相等包括類型)、==、!=、>、<、<=、>=
8、ldelim,rdelim
用于輸出分隔符 { },ldelim左分隔符,rdelim右分隔符
[html] ?view plaincopy print?
< {$role} > < {*輸出$role的值,如15*} > ?? < {ldelim} > $role < {rdelim} > < {*輸出: < {$role} > ,不會再次解析,會當字符串輸出*} > ?? 9、literal
在<{literal}><{/literal}>中的內容不會解析,當作文本處理
10、PHP
<{php}><{/php}>之間可以嵌入Php代碼
11、section,sectionelse
主要用于遍歷數組,效率、功能都比foreach強
[php] ?view plaincopy print?
$arr ?=? array (?? ????array (?? ????????'id' ?=>? '000001' ,?? ????????'title' ?=>? 'aaaaaa' ,?? ????????'name' ?=>? 'zhao' ,?? ????),?? ????array (?? ????????'id' ?=>? '000002' ,?? ????????'name' ?=>? 'qian' ,?? ????),?? ????array (?? ????????'id' ?=>? '000003' ,?? ????????'name' ?=>? 'sun' ,?? ????),?? ????array (?? ????????'id' ?=>? '000004' ,?? ????????'name' ?=>? 'li' ,?? ????),?? );?? ?? $smarty ->assign( 'arr' , $arr );?? ?? $smarty ->display( 'new.html' );?? [html] ?view plaincopy print?
< {*?? ????name,必選,循環的名稱,代表本次循環的數組下標?? ????loop,必選,循環數據的來源?? ????start,可選,循環開始位置,下標從0開始?? ????step,可選,步長,若為負,遍歷從后向前?? ????max,可選,最大循環次數?? ????show,可選,是否顯示循環?? *}> ?? < {section? name = suse ? loop =$arr? start = 1 } > ?? ????< {* start = 1 從數組的第二個元素開始循環? show = false ,下面的輸出不顯示*} > ?? ????< {if?$smarty.section.suse.first} > ?? ????????第一次循環< br > ?? ????< {/if} > ?? ????< {if?$smarty.section.suse.last} > ?? ????????最后一次循環< br > ?? ????< {/if} > ?? ????本次索引:< {$smarty.section.suse.index} > < {*當前循環的索引,從0開始,如果指定了start,則從start開始*} > ?? ????上次索引:< {$smarty.section.suse.index_prev} > < {*上一個循環的索引*} > ?? ????下次索引:< {$smarty.section.suse.index_next} > < {*下一個循環的索引*} > ?? ????執行到本次的循環次數:< {$smarty.section.suse.iteration} > < {*真實循環次數,不受step,start,max的影響,與rownum相同*} > ?? ????id:< {$arr[suse].id} > ?? ????name:< {$arr[suse].name} > < br > ?? < {sectionelse} > < {*loop變量沒有值的時候被執行*} > ?? ????none?? < {/section} > ?? < br > ?? 上面一共執行了?< {$smarty.section.suse.total} > ?次循環。??
結果:
12、strip
<{strip}><{/strip}>,顯示前刪除strip之間數據中的首尾空格和換行
頂
1 踩
總結
以上是生活随笔 為你收集整理的smarty中的内建函数(二)if、section 的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔 網站內容還不錯,歡迎將生活随笔 推薦給好友。