- 論壇徽章:
- 0
|
LZ...
function array_diff($array_1, $array_2) {
$array_2 = array_flip($array_2);
foreach ($array_1 as $key => $item) {
if (isset($array_2[$item])) {
unset($array_1[$key]);
}
}
return $array_1;
}
手冊(cè)上關(guān)于array_diff例子如下:
- <?php
- $array1 = array("a" => "green", "red", "blue", "red");
- $array2 = array("b" => "green", "yellow", "red");
- $result = array_diff($array1, $array2);
- print_r($result);
- ?>
- 在 $array1 中多次出現(xiàn)的值一樣處理,輸出結(jié)果為:
- Array
- (
- [1] => blue
- )
復(fù)制代碼
LZ所寫的情況和此函數(shù)好像不太一樣,如果兩數(shù)組的Key不一樣,值不一樣的話,所謂的比原array_diff快是沒法對(duì)比的吧.應(yīng)該和array_diff_key對(duì)比下性能.
平時(shí)對(duì)性能研究很少,分析的有問題請(qǐng)路過飄過的大俠們指點(diǎn)一二.
[ 本帖最后由 myaxl2008 于 2007-12-24 14:05 編輯 ] |
|