請教各位,有兩個array的範例如下:
array1
(
[0] => 大雄
[1] => 小夫
[2] => 靜香
)
array2
(
[0] => 大雄
[1] => 哆啦A夢
[2] => 哆啦美
[3] => 胖虎
[4] => 靜香
)
我想要依array2為主,留下與array1沒有重複的內容,如下:
array
(
[0] => 哆啦A夢
[1] => 哆啦美
[2] => 胖虎
)
目前我是寫成這樣:
array
(
[0] => 大雄
[1] => 靜香
)
程式如下:
foreach($array1 as $x => $x_value) {
foreach($array2 as $list => $list_value) {
if($x == $list){
$leave = "Key=".$list."&Value=".$list_value;
$leave_arr[] = str_replace("\r","",$leave);
}
}
}
print_r($leave_arr);
我知道應該把
if($x == $list)
改成
if($x !== $list)
但結果還是不理想,想請教是否哪裡還有錯誤?謝謝
文章是不是打錯了?
array
(
[0] => 哆啦A夢
[1] => 哆啦美
[3] => 胖虎
)
這應該是你要結果
<?php
$arr1 = array('大雄', '小夫', '靜香');
$arr2 = array('大雄', '哆啦A夢', '哆啦美', '胖虎', '靜香');
var_dump(array_diff($arr2, $arr1));
/*
array(3) {
[1]=>
string(10) "哆啦A夢"
[2]=>
string(9) "哆啦美"
[3]=>
string(6) "胖虎"
}
*/
?>