PHP配列から同一のデータを削除する方法

PHPz
リリース: 2023-04-27 17:00:33
オリジナル
612 人が閲覧しました

PHP プログラミングでは、配列はよく使用されるデータ型です。単一の変数とは異なり、配列には複数の値を格納できます。ただし、データの整合性と正確性を確保するために、配列から重複する値を削除する必要がある場合があります。今回は、PHPの配列内の同一データを削除する実装方法を紹介します。

方法 1: array_unique 関数を使用する

PHP の array_unique 関数を使用すると、配列から重複要素をすばやく削除し、一意の値のみを保持できます。この関数は引数として配列を受け取り、一意の値のみを含む新しい配列を返します。

サンプルコード:

<?php
  // 创建一个包含重复元素的数组
  $array = array(&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;a&#39;, &#39;d&#39;, &#39;e&#39;, &#39;b&#39;);
  // 使用array_unique函数去除相同的数据
  $unique_array = array_unique($array);
  // 打印去重后的数组
  print_r($unique_array);
?>
ログイン後にコピー

出力結果:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [4] => d
    [5] => e
)
ログイン後にコピー
ログイン後にコピー

ご覧のとおり、出力結果には一意の値のみが含まれており、元の配列での順序が保持されています。

方法 2: ループと in_array 関数の使用

array_unique 関数の使用に加えて、配列をループし in_array 関数を使用して重複要素を削除することもできます。 in_array 関数は、配列に値が存在するかどうかを判断するために使用され、存在する場合は true を返し、存在しない場合は false を返します。

サンプルコード:

<?php
  // 创建一个包含重复元素的数组
  $array = array(&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;a&#39;, &#39;d&#39;, &#39;e&#39;, &#39;b&#39;);
  // 创建一个空数组用于存储唯一的值
  $unique_array = array();
  // 循环数组并去除相同的数据
  foreach($array as $value) {
    if(!in_array($value, $unique_array)) {
      array_push($unique_array, $value);
    }
  }
  // 打印去重后的数组
  print_r($unique_array);
?>
ログイン後にコピー

出力結果:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [4] => d
    [5] => e
)
ログイン後にコピー
ログイン後にコピー

出力結果には一意の値のみが含まれており、元の配列での順序が保持されていることもわかります。

方法 3: array_flip 関数を使用する

重複データを削除するもう 1 つの方法は、配列のキーを使用して重複を削除することです。 PHP では、特定の配列内に同じ値が 2 つ以上発生した場合、最後の値が前の値を上書きします。したがって、array_flip 関数を使用して値をキーとして取得し、それらを配列に変換して戻すという便利なトリックを使用して、重複した値を削除できます。

サンプルコード:

<?php
  // 创建一个包含重复元素的数组
  $array = array(&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;a&#39;, &#39;d&#39;, &#39;e&#39;, &#39;b&#39;);
  // 使用array_flip函数来去除相同的数据
  $unique_array = array_flip($array);
  $unique_array = array_keys($unique_array);
  // 打印去重后的数组
  print_r($unique_array);
?>
ログイン後にコピー

出力結果:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
)
ログイン後にコピー

ご覧のとおり、出力結果には一意の値のみが含まれており、元の配列での順序が保持されています。

概要:

PHP では、array_unique、in_array、array_flip などの関数を使用して、配列から重複要素を簡単に削除できます。どの方法を選択するかは、特定のニーズとアプリケーション シナリオによって異なります。どの方法を使用する場合でも、データの整合性と正確性を確保するために、元の配列内の順序を維持するように注意する必要があります。

以上がPHP配列から同一のデータを削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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