前提:最近在做後台的時候,頁面載入太慢,故第一時間想到的自然是優化sql, 優化後sql查詢速度從 2秒變成了零點幾秒, 以為就這麼完事了,然並卵,載入竟然花費30秒!
這麼慢,然後在**中分塊記錄它的耗時時間, 發現是在 foreach 遍歷的問題,巢狀資料量太大了, 我還巢狀了三層, 資料量大約為: 30*20000*20000;
額~ ~, 相乘起來資料量有點大了,怪不得會慢~
1、模擬場景, 優化前是這樣的:
for($i=0; $i2、 優化後:<30; $i++)}}
}
for($i=0; $i將最裡面的陣列放出來,就把遍歷數量拉低了, 再用isset()內建函式加快對比速度,效果是顯著的, 優化後變成了2秒內;<30; $i++)
for($k=0; $k
<20000; $k++)
}//用完即銷毀臨時陣列
unset($temparr);}
PHP陣列foreach迴圈如何實現逆序訪問?
1 array reverse array foreach array reverse array as key value 簡單的乙個php陣列函式,之前沒這個需要一直都不知道有這麼乙個函式,擦汗.php陣列逆序輸出 foreach array reverse array as key value...
PHP中的foreach迴圈
php中的foreach語句,常用於遍歷陣列。foreach一般有兩種使用方式 1 只取陣列的值,不取陣列的下標 2 取陣列值,同時也取陣列的下標 以下面的例1和例2來解釋其用法 例1 只取值,不取下標 member array 201201 tom 201203 jack 201211 james...
PHP中foreach迴圈語句
一 語法 foreach array expression as value statement foreach array expression as key value statement foreach語句將遍歷陣列 array expression,每次迴圈時,將當前陣列中的值賦值給 val...