array_margeは便利だと思う。

$attributes = array( 'var1' => 'aaa', 'var3' => 'bbb', ); $defaults = array( 'var1' => null, 'var2' => null, 'var3' => '-', 'var4' => '-', 'var5' => '-', ); $attributes = array_merge($defaults, $attributes); echo '<PRE>'; print_r($attributes); echo '</PRE>';
実行結果↓


Array
(
    [var1] => aaa
    [var2] => 
    [var3] => bbb
    [var4] => -
    [var5] => -
)

配列にデフォルト設定するとき良く使う。 ちなみに、配列のキーの差分を取得するarray_diff_keyも便利です。

$attributes = array( 'var1' => 'aaa', 'var3' => 'bbb', 'var6' => 'ccc', ); $defaults = array( 'var1' => null, 'var2' => null, 'var3' => '-', 'var4' => '-', 'var5' => '-', ); $attributes = array_diff_key($attributes, $defaults); echo '<PRE>'; print_r($attributes); echo '</PRE>';
実行結果↓


Array
(
    [var6] => ccc
)

PHPを使い始めてそろそろ1年・・・