| 花蓮 豐坪雲山水夢幻湖 |
在資料比較的時候,使用array_diff、array_intersect方便很多,以下提出幾項需注意的要點。
array_diff($a,$b);
- 意謂用$a陣列去比較$b陣列, 如果$a有且$b沒有則取出, 所以此時以$a為基準。
- 使用時確保$a跟$b兩個列都不能為空值, 否則會發生錯誤。
- 只比較陣列中key的值。
function myTest()
{
$tommy = [
'A0001',
'A0002',
'A0003'
];
$amy = [
'A0001',
'A0002',
'A0004'
];
//比較兩個陣列內容的差異
$return_diff = array_diff($tommy, $amy);
//如果將陣列次序左右對調
$return_diff_01 = array_diff($amy, $tommy);
print_r($return_diff);
print_r($return_diff_01);
}
執行結果//$return_diff 結果
array(
[2]=>A0003
)
//$return_diff_01 結果
array(
[2]=>A0004
)
接下來介紹array_intersect($a,$b);
比較左右兩陣列, 取出互相重複的值, 沒有左右順位的問題。
function myTest1
{
$tom = [
'red',
'blue',
'yellow'
];
$rudy = [
'red',
'green',
'yellow'
];
$return_intersect = $array_intersect($tom, $rudy);
print_r($return_intersect);
}
執行結果//$return_intersect 結果
array(
[0]=>A0001
[1]=>A0002
)