ホームページ バックエンド開発 PHPチュートリアル 配列の和集合、積集合、差分関数

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

Nov 23, 2017 pm 03:37 PM
交差点 関数 配列

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 までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP 配列ディープ コピーの技術: さまざまな方法を使用して完璧なコピーを実現する PHP 配列ディープ コピーの技術: さまざまな方法を使用して完璧なコピーを実現する May 01, 2024 pm 12:30 PM

PHP で配列をディープ コピーする方法には、json_decode と json_encode を使用した JSON エンコードとデコードが含まれます。 array_map と clone を使用して、キーと値のディープ コピーを作成します。シリアル化と逆シリアル化には、serialize と unserialize を使用します。

PHP 配列キー値の反転: さまざまな方法のパフォーマンス比較分析 PHP 配列キー値の反転: さまざまな方法のパフォーマンス比較分析 May 03, 2024 pm 09:03 PM

PHP の配列キー値の反転メソッドのパフォーマンスを比較すると、array_flip() 関数は、大規模な配列 (100 万要素以上) では for ループよりもパフォーマンスが良く、所要時間が短いことがわかります。キー値を手動で反転する for ループ方式は、比較的長い時間がかかります。

Excel関数の公式の完全なコレクション Excel関数の公式の完全なコレクション May 07, 2024 pm 12:04 PM

1. SUM 関数は、列またはセルのグループ内の数値を合計するために使用されます (例: =SUM(A1:J10))。 2. AVERAGE 関数は、列またはセルのグループ内の数値の平均を計算するために使用されます (例: =AVERAGE(A1:A10))。 3. COUNT 関数。列またはセルのグループ内の数値またはテキストの数をカウントするために使用されます。例: =COUNT(A1:A10)。 4. IF 関数。指定された条件に基づいて論理的な判断を行い、結果を返すために使用されます。対応する結果。

データソートにおけるPHP配列グループ化機能の応用 データソートにおけるPHP配列グループ化機能の応用 May 04, 2024 pm 01:03 PM

PHP の array_group_by 関数は、キーまたはクロージャ関数に基づいて配列内の要素をグループ化し、キーがグループ名、値がグループに属する要素の配列である連想配列を返すことができます。

PHP 配列のディープ コピーのベスト プラクティス: 効率的な方法を発見する PHP 配列のディープ コピーのベスト プラクティス: 効率的な方法を発見する Apr 30, 2024 pm 03:42 PM

PHP で配列のディープ コピーを実行するためのベスト プラクティスは、 json_decode(json_encode($arr)) を使用して配列を JSON 文字列に変換し、それから配列に戻すことです。 unserialize(serialize($arr)) を使用して配列を文字列にシリアル化し、それを新しい配列に逆シリアル化します。 RecursiveIteratorIterator を使用して、多次元配列を再帰的に走査します。

PHP 配列の多次元ソートの実践: 単純なシナリオから複雑なシナリオまで PHP 配列の多次元ソートの実践: 単純なシナリオから複雑なシナリオまで Apr 29, 2024 pm 09:12 PM

多次元配列のソートは、単一列のソートとネストされたソートに分類できます。単一列のソートでは、array_multisort() 関数を使用して列ごとにソートできますが、ネストされたソートでは、配列を走査してソートするための再帰関数が必要です。具体的な例としては、製品名による並べ替えや、売上数量や価格による化合物の並べ替えなどがあります。

C++ 関数例外の詳細: カスタマイズされたエラー処理 C++ 関数例外の詳細: カスタマイズされたエラー処理 May 01, 2024 pm 06:39 PM

C++ の例外処理は、特定のエラー メッセージ、コンテキスト情報を提供し、エラーの種類に基づいてカスタム アクションを実行するカスタム例外クラスを通じて強化できます。 std::Exception から継承した例外クラスを定義して、特定のエラー情報を提供します。カスタム例外をスローするには、throw キーワードを使用します。 try-catch ブロックでdynamic_castを使用して、キャッチされた例外をカスタム例外タイプに変換します。実際の場合、open_file 関数は FileNotFoundException 例外をスローします。例外をキャッチして処理すると、より具体的なエラー メッセージが表示されます。

重複要素の検索における PHP 配列グループ化関数の役割 重複要素の検索における PHP 配列グループ化関数の役割 May 05, 2024 am 09:21 AM

PHP の array_group() 関数を使用すると、指定したキーで配列をグループ化し、重複する要素を見つけることができます。この関数は次の手順で動作します。 key_callback を使用してグループ化キーを指定します。必要に応じて、value_callback を使用してグループ化値を決定します。グループ化された要素をカウントし、重複を特定します。したがって、array_group() 関数は、重複する要素を見つけて処理するのに非常に役立ちます。

See all articles