欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

探討Smarty中如何獲取數(shù)組的長度以及smarty調(diào)用php函數(shù)的詳解

 更新時間:2013年06月20日 11:05:10   作者:  
本篇文章是對Smarty中如何獲取數(shù)組的長度以及smarty調(diào)用php函數(shù)的方法進行了詳細的分析介紹,需要的朋友參考下

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

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

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


 

相關文章

  • PHP設計模式中觀察者模式詳解

    PHP設計模式中觀察者模式詳解

    觀察者模式是極其重要的一個設計模式,也是我?guī)啄觊_發(fā)過程中使用最多的設計模式,本文首先概述觀察者模式的基本概念和Demo實現(xiàn),接著是觀察者模式在Java和Spring中的應用,最后是對觀察者模式的應用場景和優(yōu)缺點進行總結
    2022-12-12
  • php簡單獲取目錄列表的方法

    php簡單獲取目錄列表的方法

    這篇文章主要介紹了php簡單獲取目錄列表的方法,涉及php操作目錄的技巧,非常具有實用價值,需要的朋友可以參考下
    2015-03-03
  • getimagesize獲取圖片尺寸實例

    getimagesize獲取圖片尺寸實例

    這篇文章主要介紹了getimagesize獲取圖片尺寸的方法,實例講述了getimagesize獲取圖片的尺寸、格式等參數(shù)的實現(xiàn)方法,具有一定的參考借鑒價值,需要的朋友可以參考下
    2014-11-11
  • PHP整合七牛實現(xiàn)上傳文件

    PHP整合七牛實現(xiàn)上傳文件

    這篇文章主要介紹了PHP整合七牛實現(xiàn)上傳文件的相關資料,需要的朋友可以參考下
    2015-07-07
  • IP攻擊升級,程序改進以對付新的攻擊

    IP攻擊升級,程序改進以對付新的攻擊

    我上一篇文章《最新開發(fā)的網(wǎng)站防IP攻擊代碼,超級有用》寫了一個完整的防止網(wǎng)絡惡意IP攻擊的方案,使用了一個月,效果良好。
    2010-11-11
  • PHP中strtr字符串替換用法詳解

    PHP中strtr字符串替換用法詳解

    這篇文章主要介紹了PHP中strtr字符串替換用法,以大量實例詳細解讀了strtr字符串替換的用法與技巧,并與str_replace做了對比以加深理解,需要的朋友可以參考下
    2014-11-11
  • PHP循環(huán)獲取GET和POST值的代碼

    PHP循環(huán)獲取GET和POST值的代碼

    用php循環(huán)獲取頁面中get和post的值
    2008-04-04
  • php將print_r處理后的數(shù)據(jù)還原為原始數(shù)組的解決方法

    php將print_r處理后的數(shù)據(jù)還原為原始數(shù)組的解決方法

    下面小編就為大家?guī)硪黄猵hp中將print_r處理后的數(shù)據(jù)還原為原始數(shù)組的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考
    2016-11-11
  • PHP-Fcgi下PHP的執(zhí)行時間設置方法

    PHP-Fcgi下PHP的執(zhí)行時間設置方法

    昨天,一個程序需要導出500條數(shù)據(jù),結果發(fā)現(xiàn)到150條是,Nginx報出504 Gateway Timeout錯誤,原來PHP-Fcgi下的設置執(zhí)行時間與isapi的不同
    2013-08-08
  • PHP中開啟gzip壓縮的2種方法

    PHP中開啟gzip壓縮的2種方法

    這篇文章主要介紹了PHP中開啟gzip壓縮的2種方法,本文介紹了php配置文件與開啟方法、php文件開啟方法,需要的朋友可以參考下
    2015-01-01

最新評論