天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

探討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函數的詳解,轉載需保留來源!

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

主站蜘蛛池模板: 久久综合色视频 | 人人爽久久久噜噜噜丁香AV | 老妇高潮潮喷到猛进猛出 | 东莞桑拿美女 | 菠萝菠萝蜜免费播放高清 | 欧美丝袜女同 | 国产精品点击进入在线影院高清 | 亚洲一区日韩一区欧美一区a | 精品国产乱码久久久久久软件 | 欧美男同gay粗大又长 | 国产精品无码AV天天爽色欲 | 成人国产AV精品久久久久 | 午夜国产一区在线观看 | 伊人久久网国产伊人 | 女教师跟黑人男朋友激情过后 | 国产偷窥盗摄一区二区 | 精品国产乱码久久久久久下载 | 小莹的性荡生活40章 | 亚婷婷洲AV久久蜜臀无码 | 99热婷婷国产精品综合 | 国产精品久久国产三级国不卡顿 | 国产人妻人伦精品熟女麻豆 | 亚洲看片无码免费视频 | 天天久久狠狠色综合 | 日本经典片免费看 | 国产亚洲精品久久久久久无码网站 | 精品无码久久久久久久久 | 黑人巨大两根一起挤进欧美 | 女人高潮了拔出来了她什么感觉 | 久久久国产精品免费A片蜜臀 | 亚洲 自拍 欧洲 视频二区 | 秋霞电影网视频一区二区三区 | 国产亚洲精品久久无亚洲 | brazzers巨臀系列 | 亚洲国产在线2o20 | 啪啪漫画无遮挡全彩h网站 啪啪漫画无遮挡全彩h同人 | 狼人大香伊蕉国产WWW亚洲 | 娇喘嗯嗯 轻点啊视频福利 娇喘高潮教室h | 麻豆国产精品久久人妻 | AV国产乱码一区二区三视频 | 中国成人在线视频 |