亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > PHP > 正文

PHP遍歷數組的三種方法及效率對比分析

2024-05-04 23:31:19
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了PHP遍歷數組的三種方法及效率對比,實例分析了foreach、while與for三種遍歷數組的方法與相關的效率比對,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例分析了PHP遍歷數組的三種方法及效率對比。分享給大家供大家參考。具體分析如下:

今天有個朋友問我一個問題php遍歷數組的方法,告訴她了幾個。順便寫個文章總結下,如果總結不全還請朋友們指出

第一、foreach()

foreach()是一個用來遍歷數組中數據的最簡單有效的方法。

 

 
  1. <?php  
  2. $urlsarray('aaa','bbb','ccc','ddd'); 
  3. foreach ($urls as $url){  
  4. echo "This Site url is $url! <br />"
  5. }  
  6. ?> 

顯示結果:

 

 
  1. This Site url is aaa  
  2. This Site url is bbb  
  3. This Site url is ccc  
  4. This Site url is ddd 

第二、while() 和 list(),each()配合使用。

 

 
  1. <?php  
  2. $urlsarray('aaa','bbb','ccc','ddd');  
  3. while(list($key,$val)= each($urls)) {  
  4. echo "This Site url is $val.<br />";  
  5. }  
  6. ?>  

顯示結果:

 

 
  1. This Site url is aaa 
  2. This Site url is bbb 
  3. This Site url is ccc 
  4. This Site url is ddd 

第三、for()運用for遍歷數組

 

 
  1. <?php  
  2. $urlsarray('aaa','bbb','ccc','ddd');  
  3. for ($i= 0;$icount($urls); $i++){  
  4. $str$urls[$i];  
  5. echo "This Site url is $str.<br />";  
  6. }  
  7. ?> 

顯示結果:

 

 
  1. This Site url is aaa  
  2. This Site url is bbb  
  3. This Site url is ccc  
  4. This Site url is ddd  

有時候有人也在問這幾種遍歷數組的方法哪個更快捷些呢,下面做個簡單的測試就明白了

下面來測試三種遍歷數組的速度

一般情況下,遍歷一個數組有三種方法,for、while、foreach。其中最簡單方便的是foreach。下面先讓我們來測試一下共同遍歷一個有50000個下標的一維數組所耗的時間。

 

 
  1. <?php  
  2. $arrarray();  
  3. for($i= 0; $i< 50000; $i++){  
  4. $arr[]= $i*rand(1000,9999);  
  5. }  
  6. function GetRunTime()  
  7. {  
  8. list($usec,$sec)=explode(" ",microtime());  
  9. return ((float)$usec+(float)$sec);  
  10. }  
  11. ######################################  
  12. $time_start= GetRunTime();  
  13. for($i= 0; $icount($arr); $i++){  
  14. $str$arr[$i];  
  15. }  
  16. $time_end= GetRunTime();  
  17. $time_used$time_end$time_start;  
  18. echo 'Used time of for:'.round($time_used, 7).'(s)<br /><br />';  
  19. unset($str$time_start$time_end$time_used);  
  20. ######################################  
  21. $time_start= GetRunTime();  
  22. while(list($key$val)= each($arr)){  
  23. $str$val;  
  24. }  
  25. $time_end= GetRunTime();  
  26. $time_used$time_end$time_start;  
  27. echo 'Used time of while:'.round($time_used, 7).'(s)<br /><br />';  
  28. unset($str$key$val$time_start$time_end$time_used);  
  29. ######################################  
  30. $time_start= GetRunTime();  
  31. foreach($arr as$key=> $val){  
  32. $str$val;  
  33. }  
  34. $time_end= GetRunTime();  
  35. $time_used$time_end$time_start;  
  36. echo 'Used time of foreach:'.round($time_used, 7).'(s)<br /><br />';  
  37. ?> 

測試結果:

 

 
  1. Used time of for:0.0228429(s)  
  2. Used time of while:0.0544658(s)  
  3. Used time of foreach:0.0085628(s) 

經過反復多次測試,結果表明,對于遍歷同樣一個數組,foreach速度最快,最慢的則是while。從原理上來看,foreach是對數組副本進行操作(通過拷貝數組),而while則通過移動數組內部指標進行操作,一般邏輯下認為,while應該比foreach快(因為foreach在開始執行的時候首先把數組復制進去,而while直接移動內部指標。),但結果剛剛相反。原因應該是,foreach是PHP內部實現,而while是通用的循環結構。所以,在通常應用中foreach簡單,而且效率高。在PHP5下,foreach還可以遍歷類的屬性。

希望本文所述對大家的php程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国内精品久久久久久中文字幕| 国内精品视频在线| 夜夜狂射影院欧美极品| 欧美wwwxxxx| 欧美性猛交xxxx免费看| 九九九久久国产免费| 蜜月aⅴ免费一区二区三区| 国产成人亚洲综合| 久久综合免费视频| 黄网动漫久久久| 中文字幕亚洲情99在线| 九九久久久久久久久激情| 精品视频在线导航| 97在线视频免费观看| 精品中文字幕在线观看| 91网站免费看| 26uuu久久噜噜噜噜| 日本在线观看天堂男亚洲| 日韩精品中文在线观看| 日韩av观看网址| 亚洲女人天堂av| 亚洲福利在线观看| 一个人看的www久久| 久久久久国色av免费观看性色| 国产精品女人网站| 久久精彩免费视频| 中文字幕日韩欧美在线视频| 国产日产欧美a一级在线| 中文字幕视频在线免费欧美日韩综合在线看| 亚洲天堂久久av| 久久成人av网站| 亚洲性av网站| 欧美特级www| 久久人人爽国产| 日韩av一卡二卡| 另类天堂视频在线观看| 亚洲视频在线看| 日韩最新在线视频| 在线日韩第一页| 91在线高清视频| 亚洲色图欧美制服丝袜另类第一页| 97视频在线观看亚洲| 久久国产精品久久精品| 久久影院在线观看| 青青草原成人在线视频| 92福利视频午夜1000合集在线观看| 91精品久久久久久久久久久久久久| 人人澡人人澡人人看欧美| 国产精品wwwwww| 97成人在线视频| 欧美成人午夜剧场免费观看| 免费91在线视频| 国产一区二区三区视频| 黑人极品videos精品欧美裸| 国产福利精品av综合导导航| 亚洲欧美制服第一页| 欧美日韩在线观看视频| 久久99热精品| 国产精品成人av性教育| 在线观看日韩欧美| 丝袜一区二区三区| 国产精品一区二区三区毛片淫片| 欧美理论在线观看| 日韩成人av一区| 日韩视频在线一区| 91精品久久久久| 国产成人一区二区三区| 亚洲天堂第二页| 性欧美暴力猛交69hd| 亚洲激情视频在线观看| 欧美激情精品久久久久久免费印度| 久久福利视频网| 日韩免费不卡av| 久久久久中文字幕2018| 欧美日韩国产精品一区| 7m第一福利500精品视频| 国产在线拍偷自揄拍精品| 日本韩国欧美精品大片卡二| 国产精品久久久久久久7电影| 欧美成在线观看| 日本精品视频在线| 久久亚洲精品中文字幕冲田杏梨| 国产精品免费视频久久久| 日韩欧美在线第一页| 欧美专区在线播放| 日韩欧美国产高清91| 日韩中文在线不卡| 午夜精品一区二区三区视频免费看| 成人有码在线播放| 91高清视频免费| 97色在线视频观看| 91亚洲人电影| 日韩av最新在线| 国外成人性视频| 国模精品视频一区二区三区| 国产日韩欧美在线观看| 久久免费视频在线观看| 国产精品v日韩精品| 久久免费视频这里只有精品| 欧美极品美女视频网站在线观看免费| 亚洲va欧美va国产综合久久| 久久九九精品99国产精品| 亚洲国产高潮在线观看| 成人av在线网址| 欧美性极品xxxx娇小| 国产亚洲欧美一区| 萌白酱国产一区二区| 精品福利樱桃av导航| 欧美在线激情网| 国产欧美日韩精品丝袜高跟鞋| 国内精品久久久久久| 久久久国产精品免费| 欧美亚洲另类制服自拍| 欧美视频专区一二在线观看| 欧美成人第一页| 欧美日韩一区二区在线播放| 欧美日韩国产专区| 韩曰欧美视频免费观看| 亚洲理论在线a中文字幕| 亚洲国产精品yw在线观看| 欧美情侣性视频| 欧美成人四级hd版| 精品欧美激情精品一区| 亚洲午夜精品久久久久久性色| 中文字幕日韩精品在线观看| 亚洲成人999| 大桥未久av一区二区三区| 91久久综合亚洲鲁鲁五月天| 亚洲www永久成人夜色| 91午夜在线播放| 亚洲欧美在线一区二区| 中文字幕久久久| 色综合伊人色综合网站| 成人精品网站在线观看| 亚洲欧美成人在线| 久久久久久久久久久久av| 亚洲欧美日韩另类| 久久久久久久一区二区| 91精品视频在线免费观看| 欧美大尺度电影在线观看| 国产主播欧美精品| 欧美黑人一级爽快片淫片高清| zzjj国产精品一区二区| 成人精品一区二区三区电影黑人| 国产亚洲激情在线| 国产精品白丝jk喷水视频一区| 亚洲欧美国产视频| 国产精品电影久久久久电影网| 日韩欧美在线第一页| 亚洲精品网站在线播放gif| 日韩免费看的电影电视剧大全| 日韩国产高清污视频在线观看| 456亚洲影院| 色老头一区二区三区| 日韩中文视频免费在线观看| 成人观看高清在线观看免费| 欧美精品日韩三级| 久99久在线视频| xxxxx成人.com| 国产丝袜一区视频在线观看| 国产精品一区二区三区久久| 国产精品网址在线| 国内精品久久久久久影视8| 亚洲香蕉成视频在线观看|