PHPで配列の重複を排除するにはいくつかの方法があります

尊渡假赌尊渡假赌尊渡假赌
リリース: 2023-06-07 11:38:05
オリジナル
2441 人が閲覧しました

php で配列の重複を排除するには 3 つの一般的な方法があります: 1. 「array_unique()」関数は配列内の重複した値を削除し、新しい配列を返すことができます; 2. ループを使用して削除します重複がある場合は for を使用する または、foreach ループが配列全体を走査して重複があるかどうかを判断し、重複を削除します; 3. 「array_flip()」および「array_keys()」関数を使用します。「array_flip()」関数はキーを交換し、配列の値、「array_keys()」ですべてのキー名を取得します。

PHPで配列の重複を排除するにはいくつかの方法があります

このチュートリアルのオペレーティング システム: Windows 10 システム、php8.1.3 バージョン、Dell G3 コンピューター。

php で配列から重複を削除する一般的な方法は 3 つあります:

1. array_unique() 関数

array_unique() 関数を使用して、繰り返される値の配列から重複を削除し、新しい配列を返します。

$array = array("a" => "apple", "b" => "banana", "c" => "apple");
$unique_array = array_unique($array);
print_r($unique_array);
ログイン後にコピー

出力結果は次のとおりです:

Array
(
    [a] => apple
    [b] => banana
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

2. ループを使用して重複アイテムを削除します

for または foreach ループを使用して、配列全体を走査し、重複があるかどうかを確認して削除します。この方法は小さな配列にはうまく機能しますが、大きな配列の場合は時間がかかる可能性があります。

$array = array("a" => "apple", "b" => "banana", "c" => "apple");
foreach ($array as $key => $value) {
  $count = 0;
  foreach ($array as $k => $v) {
      if ($v == $value) {
          $count++;
          if ($count > 1) {
              unset($array[$k]);
          }
      }
  }
}
print_r($array);
ログイン後にコピー

出力:

Array
(
    [a] => apple
    [b] => banana
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

3. array_flip() 関数と array_keys() 関数を使用します

array_flip() 関数を使用してキーを変換しますと配列の値を交換し、array_keys() を使用してすべてのキー名を取得します。キーは一意であるため、これにより、重複する項目を含まない結果セットが効果的に作成されます。

$array = array("a" => "apple", "b" => "banana", "c" => "apple");
$unique_array = array_flip(array_flip($array));
print_r($unique_array);
ログイン後にコピー

出力は次のとおりです:

Array
(
    [a] => apple
    [b] => banana
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

これらのメソッドは、配列の重複排除を実現できるいくつかのメソッドにすぎません。array_count_values()、array_reduce() などを使用するような他のメソッドもあります。 . 開発者が実際のニーズに応じてマスターするため。

以上がPHPで配列の重複を排除するにはいくつかの方法がありますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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