配列内の重複した値を削除する関数とその注意点。
【array_unique(配列)】
ex.1:
$A = array(‘apple’,’orange’,’grape’,’apple’,’melon’);
$R = array_unique($A);
print var_dump($R);
→array(4){
[0]=>string(5)”apple”
[1]=>string(6)”orange”
[2]=>string(5)”grape”
[4]=>string(5)”melon”
}
以上のような配列になる。
ただ、array_uniqueはキーがそのまま保持されてしまうため、順番的には4番目の値なのにキーが「4」となっている。
キーを保持する必要がある場合はこれでいいのだが、保持したくない場合は再度キーを割り当てる必要がある。
その場合は、array_uniqueの後にarray_valueを使う。
【array_value(配列)】
ex.2:
$A = array(‘apple’,’orange’,’grape’,’apple’,’melon’);
$R = array_unique($A);
//キー振り直し
$Y = array_value($R);
print var_dump($Y);
→array(4){
[0]=>string(5)”apple”
[1]=>string(6)”orange”
[2]=>string(5)”grape”
[3]=>string(5)”melon”
}