これが状況です: 私は2つの配列を持っています、例えば:
$a=array("a","b","c","d");
$b=array("1","b","c","e");
2つの配列を作成したい
$c=array("a","d");//only element appeared on $a
$d=array("1","e");//only element appeared on $b
あなたは賢い解決策を持っていますか?
回答:
回答№1は2$c = array_diff($a, $b);
$d = array_diff($b, $a);
回答№2の場合は0
すみません、私の悪い状態です。それは私のテストで間違った配列を与えていたことが判明しました。 simple array_diffが問題を解決しました:
$c = array_diff($a, $b);
$d = array_diff($b, $a);
回答№3の場合は0
array_diff()関数を使ってみてください。
array_diff(array1,array2,array3...)
例えば:
<?php
$a1=array(0=>"Cat",1=>"Dog",2=>"Horse");
$a2=array(3=>"Horse",4=>"Dog",5=>"Fish");
print_r(array_diff($a1,$a2));
?>
出力:
Array ( [0] => Cat )
ソース: http://www.w3schools.com/PHP/func_array_diff.asp