ホームページ  >  記事  >  バックエンド開発  >  初心者! PHP 2 つの配列の比較について

初心者! PHP 2 つの配列の比較について

WBOY
WBOYオリジナル
2016-06-13 12:09:551292ブラウズ

初心者! PHP で 2 つの配列の比較について!
現在 2 つの配列があります:

配列 A は製品 ID に基づいてデータベースから取得された製品属性です

配列 B はページから送信された製品属性です

配列 A をベンチマークとして 2 つの配列を比較します。配列 B の要素が配列 A よりも 1 つ少ない場合は、データベース内のこの要素に関連付けられた ID を削除します。

配列 B に配列 A より要素が 1 つ多い場合は、この要素と関連付けられた ID をデータベースに追加します

助けてください。 ! !
------解決策のアイデア----------------------
B には A よりも多くの項目があります array_diff ( B, A)
A には B より多くの項目があります array_diff(A, B)

-----解決策のアイデア------------ -- --------

<br />//B数组比A数组少了一个元素<br />$a=array('a1','a2','a3','a4');<br />$b=array('a1','a2','a3');<br /><br />$new=array_merge(array_diff($a, array_intersect($a, $b)), array_diff($b, array_intersect($a, $b)));<br /><br />echo "<pre class="brush:php;toolbar:false">";<br />print_r($new);<br />echo "
";
/*
Array
(
[0] => a4
)
*/
//B数组比A数组多了一个元素
$a=array('a1','a2','a3');
$b=array('a1','a2','a3','b1','b2');

$new=array_merge(array_diff($a, array_intersect($a, $b)), array_diff($b, array_intersect($a, $b)));

echo "
";<br />print_r($new);<br />echo "
";
/*
Array
(
[0] => b1
[1] => b2
)
*/

$new 配列と $a 配列を比較します。

を追加するか削除するかはあなた次第です。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。