PHP で配列から重複データを削除する 2 つの方法を紹介します
array_unique 関数を使用して、配列内の重複した値を直接削除し、最初の重複した値のみを残しますとその対応するキー値が表示されます
具体的な手順については、PHP マニュアルを確認してください
例 1:
$input = array("a" => "green", "red", "b" => "green", "blue", "red");$result = array_unique($input);print_r($result);
この時点での出力:
Array( [a] => green [0] => red [1] => blue)
注: array_unique 関数では、int(3) とstring(1) '3' の場合、関数は 2 つの値を同じ値とみなし、最初に出現した値のみを保持します。 例 2:
$input = array(4, "4", "3", 4, 3, "3");$result = array_unique($input);var_dump($result);
このとき、次のように出力されます:
array(2) { [0] => int(4) [2] => string(1) "3"}
array_unique 関数を使用すると非常に便利ですが、array_unique 関数は保持されている値の元のキー値を変更しないため、操作が困難になります。このとき、array_flip 関数と array_keys 関数
$trans = array("a" => 1, "b" => 1, "c" => 2);$trans = array_flip($trans);print_r($trans);
Array( [1] => b [2] => c)
$array = array(0 => 100, "color" => "red");print_r(array_keys($array));$array = array("blue", "red", "green", "blue", "blue");print_r(array_keys($array, "blue"));$array = array("color" => array("blue", "red", "green"), "size" => array("small", "medium", "large"));print_r(array_keys($array));
Array( [0] => 0 [1] => color)Array( [0] => 0 [1] => 3 [2] => 4)Array( [0] => color [1] => size)
追加: エディターが array_keys 関数を導入したとき、突然問題が発生しました。すべての配列の値を取得できる関数があるはずであることを確認してください。しばらくすると、この関数は配列とレコードのすべての値を返すことができます。このようにして、キーの値を「0」から数えることもできるため、この記事の目的を達成したい場合は、最初に array_unique 関数を使用してから、array_value 関数を使用することもできます。それ。