ホームページ > バックエンド開発 > PHPチュートリアル > PHP で多次元配列から重複する部分配列を効率的に削除するにはどうすればよいですか?

PHP で多次元配列から重複する部分配列を効率的に削除するにはどうすればよいですか?

DDD
リリース: 2024-12-19 15:37:09
オリジナル
352 人が閲覧しました

How Can I Efficiently Remove Duplicate Sub-Arrays from a Multi-Dimensional Array in PHP?

PHP の多次元配列から重複する値を削除する

多次元配列などの複雑なデータ構造には、多くの場合、特殊なテクニックが必要です。その内容を操作します。一般的な課題の 1 つは、複数の埋め込み配列間で重複する値を削除することです。

PHP アプローチ

効率的なアプローチの 1 つは、PHP の array_unique 関数と array_map 関数を組み合わせて使用​​することです。

$input = array(
    [0] => ['abc', 'def'],
    [1] => ['ghi', 'jkl'],
    [2] => ['mno', 'pql'],
    [3] => ['abc', 'def'],
    [4] => ['ghi', 'jkl'],
    [5] => ['mno', 'pql']
);

$uniqueArray = array_map("unserialize", array_unique(array_map("serialize", $input)));
ログイン後にコピー

この中でcode:

  • array_map("serialize", $input) は、各サブ配列をシリアル化された文字列に変換します。
  • array_unique は、重複するシリアル化された文字列を削除し、一意の値のセットを生成します。
  • array_map("unserialize", ...) は、一意のシリアル化された配列から元のサブ配列を再構築します。 strings.

このアプローチの利点

  • 中間変数を必要としない多次元配列の再帰処理。
  • 出力内のサブ配列の順序を保持します。
  • と互換性があります。サブ配列内のさまざまな値のタイプ (文字列、整数、配列など)。

以上がPHP で多次元配列から重複する部分配列を効率的に削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート