ホームページ  >  記事  >  バックエンド開発  >  配列の和集合、積集合、差分関数

配列の和集合、積集合、差分関数

小云云
小云云オリジナル
2017-11-23 15:37:493574ブラウズ

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配列の単純な積、差分、および和集合関数の実装例

配列の和集合に関する注意点のまとめ

php複数の配列の和集合、積、差分演算関数の概要

以上が配列の和集合、積集合、差分関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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