【メモ】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()
でソートします。
以上。
Author And Source
この問題について(【メモ】PHPで二つの配列を重複無しでマージする。), 我々は、より多くの情報をここで見つけました https://qiita.com/Yorinton/items/e21edcc760e537eef9dd著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .