phpには本当に多くの配列関数が存在します。実際の作業では、php自体に存在するいくつかの関数について詳しく学ぶことで、作業の速度が大幅に向上します。この記事では、PHP で 2 つ以上の配列の和集合、積集合、差分を処理する方法について説明します。
(1) PHP は 2 つ以上の配列の和集合を計算します
和集合は、2 つ以上の配列を 1 つの配列に結合した結果セットです。 PHP では、配列をマージするために通常、array_merge と + が使用されます。 2つの違いについては、このサイトの記事を参照してください:
PHP merge array + と array_merge の違い
(1) PHP は 2 つ以上の配列の交差を計算します
交差が違いです2 つ以上の配列間 すべてが存在するデータの集合。配列の交差の計算には、主に次のような array_intersect システムの関数が使用されます:
array_intersect ( $arr , $arr2[…]) 配列 $arr と他の配列の交差を返します。キー名は残ります。変更なし。
array_intersect_assoc( $arr, $arr2[……]) キー名を比較し、インデックスを変更しないまま、配列 $arr と他の配列の共通部分を返します。
array_intersect_uassoc( $arr , $arr2 […] , 'cmp_function ') は、配列とインデックスの交差をチェックし、コールバック関数を使用して、インデックスを比較します。
array_intersect_key ( $arr ,$arr2 […] ) キー名の比較を使用して配列の共通部分を計算します。
array_intersect_ukey( $arr , $arr2 […], 'cmp_function'); コールバック関数を使用してキー名を比較し、配列の共通部分を計算します。
array_uintersect ( $arr , $arr2 […] , 'cmp_function' ) 配列内の共通部分を比較し、コールバック関数を使用してデータを比較します。
array_uintersect_assoc( $arr, $arr2[…] , 'cmp_function') 配列とインデックスの交差を確認し、コールバック関数を使用してデータを比較します。
array_uintersect_uassoc($arr, $arr2 […], 'cmp_function') は、配列とインデックスの交差をチェックし、コールバック関数を使用してデータとインデックスを比較します。
array_intersect の例は次のとおりです:
$array1=array('a'=>'green','red','blue'); $array2=array('b'=>'green','yellow','red'); $result=array_intersect($array1,$array2);
$result の結果は次のようになります:
Array ( [a]=>green [0]=>red )
(1) PHP は 2 つ以上の配列の差分セットを計算します
差分セットは、配列の一部のセットです。交差点を除いたデータ。配列の差分セットの計算には、主に次のような array_diff システムの関数が使用されます:
array_diff( $arr , $arr2[...] ) $arr1 のすべてのパラメーターを含むが含まれない配列を返します。他のパラメータ配列では、値とキー名は変更されません。
array_diff_uassoc( $arr ,$arr2 ,[...] , 'cmp_function') は、配列内の差分セットを比較するためのインデックスとしてコールバック関数を使用します。
array_diff_assoc( $arr , $arr2[……] ) は、キー名を比較し、インデックスを変更しないまま、 $arr と他の配列の差である配列を返します。
array_udiff ( $arr , $arr2 […] , 'cmp_function') コールバック関数を使用してデータを比較し、配列の差分を計算します。
array_udiff_uassoc ( $arr ,$arr2 ,[...] , 'cmp_function') インデックス付き配列の差分セットを確認し、コールバック関数を使用してデータとインデックスを比較します。
array_udiff_assoc ( $arr ,$arr2 ,[...] , 'cmp_function') インデックス付き配列の差分セットを確認し、コールバック関数を使用してデータを比較し、キー名も比較されます。
array_diff の例は次のとおりです:
$array1=array('a'=>'green','red','blue','red'); $array2=array('b'=>'green','yellow','red'); $result=array_diff($array1,$array2);
$result の結果は次のようになります:
array(1=>'blue')
上記は、次の和集合、交差関数、差分関数の簡単な紹介です。 php 配列を具体的に使用するには、php マニュアル を参照してください。
関連する推奨事項:
以上が配列の和集合、積集合、差分関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。