ホームページ >バックエンド開発 >PHPの問題 >PHPは配列から重複した要素を削除します

PHPは配列から重複した要素を削除します

WBOY
WBOYオリジナル
2023-05-19 09:24:37442ブラウズ

PHP は、データを処理するための多くの配列関数を提供する強力な Web 開発言語です。配列から重複した要素を削除する必要がある場合、PHP のいくつかの組み込み関数を使用してこのタスクを簡単に実行できます。この記事では、PHP 組み込み関数を使用して配列から重複要素を削除する方法を紹介します。

  1. array_unique() 関数の使用

PHP の array_unique() 関数は、配列から重複要素を削除するために最もよく使用されるメソッドの 1 つです。この関数は、元の配列のすべての個別の要素を含む新しい配列を返します。

次は、array_unique() 関数を使用して配列内の重複要素を削除する例です。

<?php
$fruits = array("apple", "banana", "orange", "apple", "orange");
$result = array_unique($fruits);
print_r($result);
?>

出力結果:

Array
(
    [0] => apple
    [1] => banana
    [2] => orange
)

ご覧のとおり、重複した要素は元の配列の要素「apple」と「orange」は削除されました。

  1. array_values() 関数を使用する

array_unique() 関数を使用すると、新しい配列が返され、インデックス キーの順序が変更されます。元の配列のキーを保持する必要がある場合は、PHP の array_values() 関数を使用して配列のインデックスを再作成できます。

次は、array_values() 関数の使用例です:

<?php
$fruits = array("apple", "banana", "orange", "apple", "orange");
$result = array_unique($fruits);
$result = array_values($result);
print_r($result);
?>

出力結果:

Array
(
    [0] => apple
    [1] => banana
    [2] => orange
)

array_values() 関数を使用した後、新しい配列のキーの順序が変更されました。

  1. foreach ループの使用

PHP の foreach ループと in_array() 関数を使用して、配列内の重複要素を削除することもできます。このメソッドの考え方は、配列内の各要素をループし、新しい配列に既に存在する場合はスキップし、そうでない場合は新しい配列に追加するというものです。

次は、foreach ループを使用して配列内の重複要素を削除する例です:

<?php
$fruits = array("apple", "banana", "orange", "apple", "orange");
$result = array();

foreach ($fruits as $fruit) {
    if (!in_array($fruit, $result)) {
        $result[] = $fruit;
    }
}

print_r($result);
?>

出力結果:

Array
(
    [0] => apple
    [1] => banana
    [2] => orange
)

ご覧のとおり、このメソッドは次のこともできます。配列の繰り返し要素の要素が正常に削除されました。

概要:

PHP には、配列から重複要素を削除する関数など、配列を処理するためのさまざまな組み込み関数が用意されています。 array_unique() 関数は最も一般的に使用されるメソッドの 1 つで、元の配列のすべての個別の要素を含む新しい配列を返します。元の配列のキーを保持する必要がある場合は、PHP の array_values() 関数を使用して配列のインデックスを再作成できます。 foreach ループと in_array() 関数を使用して、配列から重複した要素を削除することもできます。どちらの方法でも、配列内の重複要素を削除する問題を簡単に解決できます。

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。