本篇內(nèi)容介紹了“PHP數(shù)組遍歷的對比測試”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!
在貴陽等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站建設(shè)、做網(wǎng)站 網(wǎng)站設(shè)計制作按需定制設(shè)計,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,成都營銷網(wǎng)站建設(shè),外貿(mào)網(wǎng)站制作,貴陽網(wǎng)站建設(shè)費用合理。
測試一:PHP4.4.1下,使用一維數(shù)組
編號 | 語句 | 時間 |
1 | for($i = 0; $i < $num = count($arr); $i++) | 0.1048162(s) |
2 | for($i = 0, $num = count($arr); $i < $num; $i++) | 0.0698998(s) |
3 | while(list($key, $val) = each($arr)) | 0.1437800(s) |
4 | while(list(, $val) = each($arr)) | 0.1226320(s) |
5 | while(list($key, ) = each($arr)) | 0.1119628(s) |
6 | foreach($arr as $key => $val) | 0.0972550(s) |
7 | foreach($arr as $val) | 0.0649691(s) |
可以看出7最快,不過這種方式不會返回下標(biāo),如果需要使用下標(biāo)這種方法就不符合要求了。其次是2,看出來這種寫法和1有什么不同了么?2在循環(huán)前計算數(shù)組的長度,而1每次循環(huán)都要計算數(shù)組的長度所以2比1更高效。不過2和1都是一樣的,只能操作那種下標(biāo)是數(shù)字而且數(shù)字連續(xù)的數(shù)組。第三是6,也就是一般討論中認為最快的方法,如果你操作數(shù)組的下標(biāo)同時下標(biāo)有是非連續(xù)數(shù)字那么毫無疑問應(yīng)該選擇這個方法,至于慢的就不多說了,忘記這些用法吧:roll:
測試二:PHP4.4.1下,使用二位數(shù)組
編號 | 語句 | 時間 |
1 | for($i = 0; $i < $num = count($arr); $i++) | 0.0824819(s) |
2 | for($i = 0, $num = count($arr); $i < $num; $i++) | 0.0523129(s) |
3 | while(list($key, $val) = each($arr)) | 0.1273971(s) |
4 | while(list(, $val) = each($arr)) | 0.0961161(s) |
5 | while(list($key, ) = each($arr)) | 0.1245570(s) |
6 | foreach($arr as $key => $val) | 0.0764248(s) |
7 | foreach($arr as $val) | 1.1415598(s) |
結(jié)果發(fā)生了重大變化
最快的是2,因為for并不會管多維的問題,所以和一維數(shù)組時相比速度并沒有發(fā)生太大的變化(至于為什么比一維還快,這個我只能說受文件中運算的影響....這種影響的而且確存在,用PEAR的Benchmark類測試的時候我就發(fā)現(xiàn)測試1次、100次、1000次得到的時間差別很大)
其次是6,同測試一中所說,如果2不能用(也就是下標(biāo)不連續(xù)),6毫無疑問是***的選擇而令人跌破眼鏡的是7,竟然是最慢的,而且比第二慢的還要慢10倍...這個問題實在令人費解,后來我又做過比較細致的測試,發(fā)現(xiàn)7這種方法,主要受元素個數(shù)的影響,如果一維10個元素,那么如果第二維都有8個元素則7的速度和6幾乎一樣,如果一維30個元素,那么二維是6個元素時7和6速度基本一樣。但是如果一維1000個元素二維元素超過3個那么7就會比6慢很多了。
“PHP數(shù)組遍歷的對比測試”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!
當(dāng)前題目:PHP數(shù)組遍歷的對比測試
轉(zhuǎn)載源于:http://m.newbst.com/article8/iigdip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、網(wǎng)站導(dǎo)航、ChatGPT、網(wǎng)站設(shè)計、品牌網(wǎng)站制作、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)