PHP 配列と配列を合体させ、重複するキーは上書き

PHP

PHP 配列と配列を合体させ、重複するキーは上書き

次のようなシチュエーションで、array_mergeという関数を利用すると便利です。

 $hogehoge_array = array("type"=>"hoge","color" => "red", 2, 4);
 
 //途中なんらかの処理があり、hogehoge_arrayが次のように変わる
 
 $hogehoge_array = array("color" => "green", "shape" => "trapezoid", 4);

上記のままにしておくと、ただ単に$hogehoge_arrayが上書きされて、もともとあった”type”という項目がなくなってしまいます。

更新されなかった古い項目はそのまま(ここでは”type”)にして、新しい更新された項目は新しい値に変更したい場合、array_mergeを利用して次のように書けます。

 $hogehoge_array = array("type"=>"hoge","color" => "red", 2, 4);
 
 //途中なんらかの処理があり、hogehoge_arrayが次のように変わる
 //配列の名前を変更しておきます。
 
 $hogehoge_array_updated = array("color" => "green", "shape" => "trapezoid", 4);
 $hogehoge_array = array_merge($hogehoge_array, $hogehoge_array_updated);
カテゴリーPHP

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です