(PHP 4 >= 4.0.1, PHP 5)
array_unique — 配列から重複した値を削除する
array を入力とし、値に重複のない新規配列を返します。
キーは保持されることに注意してください。 array_unique() はまず文字列として値をソートし、 各値の最初のキーを保持し、2回目以降の全てのキーを無視します。 これは、ソート前の array で最初の関連する値のキーが保持されるという意味ではありません。
注意: (string) $elem1 === (string) $elem2 の場合のみ二つの要素は等しいとみなされます。 言い換えると、文字列表現が同じ場合となります。 最初の要素が使用されます。
入力の配列。
オプションの 2 番目のパラメータ sort_flags にこれらの値を使用して、ソートの挙動を変更します。
ソート形式のフラグは次のとおりです。
処理済の配列を返します。
バージョン | 説明 |
---|---|
5.2.10 | sort_flags のデフォルト値を SORT_STRING に戻しました。 |
5.2.9 | オプションの sort_flags が追加され、 デフォルトは SORT_REGULAR となりました。5.2.9 より前のバージョンでは、 この関数は内部的に SORT_STRING によるソートを行っていました。 |
例1 array_unique() の例
<?php
$input = array("a" => "green", "red", "b" => "green", "blue", "red");
$result = array_unique($input);
print_r($result);
?>
上の例の出力は以下となります。
Array ( [a] => green [0] => red [1] => blue )
例2 array_unique() と型
<?php
$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() は、 多次元配列での使用を想定したものではないことに注意しましょう。