PHPで配列に同じ値が複数あった場合に一つにまとめたい場合があります。
PHPの関数でarray_unique()を使用すれば、重複した値を削除することができます。
下記にPHPのarray_unique関数を使用して、配列内の同じ値(重複値)を取り除いた時の方法をメモします。
■ 配列の重複値を削除「array_unique」
配列に重複した値がある場合、最初に出現した値が保持され、後の値は取り除かれます。
$arr = array('aaa', 'aaa', 'bbb', 'bbb', 'ccc');
$res = array_unique($arr);
【配列の値】
Array
(
[0] => aaa
[2] => bbb
[4] => ccc
)
二つ以上、重複した値があった場合でも、後に出現した値は取り除かれます。
$arr = array('aaa', 'aaa', 'aaa', 'bbb', 'bbb');
$res = array_unique($arr);
【配列の値】
Array
(
[0] => aaa
[3] => bbb
)
配列に重複した値がない場合は、何もしないでそのまま出力されます。
$arr = array('aaa', 'bbb', 'ccc', 'ddd', 'eee');
$res = array_unique($arr);
【配列の値】
Array
(
[0] => aaa
[1] => bbb
[2] => ccc
[3] => ddd
[4] => eee
)
array_unique()は重複するデータなどを集計する場合などに便利です。