PHP遍歷陣列效率分析

2021-06-21 10:38:05 字數 657 閱讀 7377

要求:兩個分別有5000個元素的陣列,計算它們的差集。

普通**:

function arr_diff($arr1,$arr2)

}return $arr1;

}

高效**:

function arr_diff($arr1,$arr2)

}return $arr1;

}

要求:判斷某個值是否在陣列中

**:

function i***ists($key,$array)

return status;

}

原因:因為key是進行hash組織的,查詢很快。

而value是由key組織存放,本身沒有索引,每次查詢都是遍歷。

備註:要針對普通環境下的負載優化,因此對於陣列迴圈及判斷上儘量減少執行時間,提高執行效率。以防止超時。

在引用中發現,在php中,對於陣列,哪怕是一維陣列,在進行查詢的過程中,array_key_exists要比in_array效率高出十幾倍道幾十倍。在大資料量的判斷中,引用鍵值搜尋,要比直接進行資料搜尋要快的很多。所以,可以有針對性的把要搜尋的資料先歸為乙個以維陣列,以鍵值為搜尋值,將會大大提高執行效率。

PHP 遍歷陣列

在程式開發中,使用陣列儲存資料很簡單,因此php提供了一種運算元組的方式 遍歷陣列。所謂的遍歷陣列就是一次訪問陣列中所有元素的操作。通常情況下,使用foreach 語句完成陣列的遍歷。操作如下 info id 1,usr jacie age 18 方法一 foreach info as k v fo...

PHP 遍歷陣列的方法彙總

foreach 是乙個用來遍歷陣列中資料的最簡單有效的方法。example1 colors array red blue green yellow foreach colorsas color 顯示結果 do you like red?do you like blue?do you like gre...

php遍歷陣列有幾種方式?

對於純數字索引的陣列可以通過for迴圈來遍歷陣列,但是要注意的是數字索引必須是連續的,否則會獲取不到陣列中的部分資料。遍歷不受陣列內部指標影響。ar1 range a e len count ar1 for i 0 i len i ar1 array 0 a 2 c d len count ar1 ...