ホームページ  >  記事  >  バックエンド開発  >  PHPで配列から重複した値を削除する方法

PHPで配列から重複した値を削除する方法

PHPz
PHPzオリジナル
2023-04-25 09:05:05423ブラウズ

PHP は、Web 開発の分野で広く使用されている人気のあるサーバーサイド スクリプト言語です。開発中、配列操作を処理することは非常に一般的です。しかし、配列では重複した値が現れる場合があり、これらの重複した値はデータ処理に不便をもたらします。したがって、PHP では、配列内の重複した値をどのように削除するかが、開発者がよく遭遇する問題になります。この記事では、PHP を使用して配列内の重複値を削除する方法とコード例を紹介します。

方法 1: array_unique() を使用する

PHP には組み込み関数 array_unique() が用意されており、配列内の重複した値をすばやく削除するのに役立ちます。この関数の使用は非常に簡単で、配列パラメータを渡すだけです。この関数は、元の配列内のすべての一意の要素を含む新しい配列を返します。

次はコード例です:

$my_array = array("apple", "orange","banana","apple","grape","orange");
$my_array = array_unique($my_array);
print_r($my_array);

上記のコードは次の結果を出力します:

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

上に示したように、array_unique() 関数を使用すると重複した要素を削除できます。元の配列では、返された結果は新しい一意の配列を形成します。ただし、array_unique() 関数は配列内のキー名を再配置しないことに注意してください。キー名を並べ替える場合は、array_values() 関数を使用する必要があります。

方法 2: 削除をループする

もう 1 つの方法は、配列を手動でループして重複値があるかどうかを確認し、重複値を削除することです。以下にコード例を示します。

$my_array = array(3, 2, 3, 4, 1, 1, 5, 6, 7, 7);

foreach($my_array as $key => $value) {
    $count = 0;
    foreach($my_array as $key2 => $value2) {
        if($value == $value2) {
            $count++;
        }
        if($count > 1) {
            unset($my_array[$key]);
        }        
    }
}
print_r($my_array);

上記のコードは次の結果を出力します。

Array ( [0] => 3 [1] => 2 [3] => 4 [4] => 1 [6] => 5 [7] => 6 [8] => 7 )

上に示したように、ループ トラバーサル手法を使用すると、重複する要素を手動で削除できます。要素が重複しています。ただし、この方法は効率が低いため、array_unique() 関数を使用できない場合にのみ推奨されます。

概要

PHP では、配列内の重複する値を削除するのが一般的な操作です。この記事では、読者の参考のために、array_unique() 関数を使用する方法と手動の走査削除という 2 つの方法を紹介します。また、配列要素を削除するときは、指定された変数を破棄するために使用される unset() 関数を使用できることにも注意する必要があります。

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

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