ホームページ > バックエンド開発 > PHPの問題 > PHPで配列内の重複した要素を削除する方法

PHPで配列内の重複した要素を削除する方法

PHPz
リリース: 2023-04-25 18:32:39
オリジナル
1321 人が閲覧しました

PHP では、配列内の重複要素を削除する必要がある場合、それを行う方法がたくさんあります。この記事では、最も一般的な 3 つの方法について説明します。

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

array_unique 関数は、配列内の重複要素を削除できる非常にシンプルで実用的な関数です。この関数の使用方法は非常に簡単で、重複排除する必要がある配列をパラメータとして関数に渡すだけです。

次は、array_unique 関数を使用して配列内の重複要素を削除するサンプル コードです:

$arr = array("apple", "orange", "banana", "orange");
$newArr = array_unique($arr);
print_r($newArr);
ログイン後にコピー

コードが実行されると、次の結果が出力されます:

Array
(
    [0] => apple
    [1] => orange
    [2] => banana
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

ご覧のとおり、$newArr 配列内の重複要素「orange」が削除されました。

方法 2: foreach ループと in_array 関数を使用する

配列内の重複要素を削除するもう 1 つの方法は、foreach ループと in_array 関数を使用することです。元の配列をループし、in_array 関数を使用して、現在の要素が新しい配列に既に存在するかどうかを確認します。存在しない場合は、その要素を新しい配列に追加します。

次は、foreach ループと in_array 関数を使用して配列内の重複要素を削除するサンプル コードです。

$arr = array("apple", "orange", "banana", "orange");
$newArr = array();
foreach ($arr as $item) {
    if (!in_array($item, $newArr)) {
        $newArr[] = $item;
    }
}
print_r($newArr);
ログイン後にコピー

コードが実行されると、次の結果が出力されます。 ##

Array
(
    [0] => apple
    [1] => orange
    [2] => banana
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
Arrive も確認できます。$newArr 配列内の重複要素「orange」が削除されました。

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

array_flip 関数と array_keys 関数を使用すると、配列内の重複した要素を削除する効果も得られます。 array_flip 関数は、配列内のキーと値を交換して重複要素を削除し、array_keys 関数を使用して新しい配列内のすべてのキーを抽出します。

次は、array_flip 関数と array_keys 関数を使用して配列内の重複要素を削除するサンプル コードです。

$arr = array("apple", "orange", "banana", "orange");
$newArr = array_keys(array_flip($arr));
print_r($newArr);
ログイン後にコピー
コードが実行されると、次の結果が出力されます。

Array
(
    [0] => apple
    [1] => orange
    [2] => banana
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
$newArr 配列内の重複要素 "orange" が削除されたことも確認できます。

概要

この記事では、PHP 配列内の重複要素を削除する 3 つの一般的な方法を紹介します。これには、array_unique 関数の使用、foreach ループと in_array 関数の使用、array_flip 関数と array_keys 関数の使用が含まれます。状況に応じてさまざまな方法が適している可能性があり、開発者は実際のニーズに基づいて配列内の重複要素を削除する機能を実現するために最適な方法を選択できます。

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

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