【メモ】PHPで二つの配列を重複無しでマージする。


開発していて2つの配列をマージしようとしたら重複がいくつかあったので重複を避ける様にマージする方法をメモ。
(他に良いやり方あったらご意見下さい><)

1、2つ配列をマージ

とりあえず、$array_1,$array_2という二つの重複する値がある配列があるとします。

$array = array_merge($array_1,$array_2);

array_merge() -> 二つの配列をマージ

2、重複を削除

$array = array_unique($array);

array_unique() -> 配列から重複した値を削除

3、空文字等不要な要素(あれば)を削除

$array = array_diff($array,array('','不要'));

※```array_diff() -> 第1引数と第2引数以降を比較して、第1引数にしか無い値の配列を返す(indexはそのまま)

4、削除した分を詰める

indexを振り直します

$results = array_values($array);

array_values() -> 配列 array から全ての値を取り出し、数値添字をつけた配列を返す

これで二つの配列をちゃんとマージ出来ます。

順番を意識する場合は、3の後にsort()でソートします。

以上。