四虎精品视频-四虎精品成人免费网站-四虎黄色网-四虎国产视频-国产免费91-国产蜜臀97一区二区三区

探討Smarty中如何獲取數組的長度以及smarty調用php函數的詳解

Smarty中如何獲取數組的長度
前提假設:
分配了一個數組array給Smarty,假設Smarty的分界符為'{' 和'}'。
在很多資料上都看到,在Smarty中要求數組的長度時,可以用在數組后便加|count的方法調用。即通過{array|count}獲得array的長度。但是今天在寫模板時,發現這樣得不到數組的長度,而只是得到一個返回的字符串Array。也就是說僅僅是返回了{array}的結果,而沒有返回其array的長度。

查看smarty/plugins文件夾,發現并沒有count的相關方法,也就是說,count是直接調用了php中的方法。
后來通過網絡上的資料,發現可以在count前面加@,從而正確的獲取數組的長度。再進一步查看Smarty的源碼,發現Smarty對屬性調節器后邊的方法名進行處理時,會對前邊加@的進行特殊處理。因此作出判斷:在Smarty中的屬性調節器中調用php中定義好的函數時,可以通過加@來表示。

1、對類型為數組的方法進行測試時,發現不加@符號都會出錯。比如:要對一個數組調用count方法求出數組的長度,就可以這樣調用{array|@count},而要對數組調用end方法得出數組的最后一組數據時,則可以通過{array|@end}。
2、在對字符串的相關函數進行測試,發現加不加@都可以正常的調用。
3、其他的尚未認真測試。對于在smarty中調用復雜的php函數不予鼓勵,因為Smarty的本意就是要實現代碼和模板分離,應該認定模板就是界面設計的人員用的,如果過多地加復雜邏輯,對他們來說就是一種折磨了。


 

php技術探討Smarty中如何獲取數組的長度以及smarty調用php函數的詳解,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 程门立雪文言文| 我的公公电影| 在线免费电影网站| 国家征收土地多少钱一亩| interracial| 上海东方卫视节目表| 蹲着吐一地呕吐视频| 金发女郎| 台湾电影网| 久草久草在线观看| 最美的时光演员表| 屁屁视频| 龟兔赛跑的故事视频| 刷子李课堂笔记| 影库影片| 潜龙轰天 电影| 林青霞离婚| 《x教程》韩剧免费观看| 小城故事多三观不正| 小数加减法评课| 潇洒走一回广场舞完整版| 难兄难弟 电视剧| 包青天之真假包公| 影子是我的好朋友仿句怎么写| 挠60分钟美女腋窝视频| 佐藤蓝子| 叶子楣地下裁决| 香蜜沉沉烬如霜电视剧演员表| 毕业论文3000字范文| 九州电影网| 八仙过海 电影| 成龙版杨家将电影免费播放| 好好的电影| 都璟秀| 深流 电视剧| 啊摇篮电影| 周秀娜三级大尺度视频| 凌晨晚餐| 会说话的金杰| 爱情电影网aqdy| 迷案1937电视剧剧情介绍|