PHPでnamed parameter的実装

function example($options = array()) {
  $options += array(
    argKey1' => 'argDefaultValue1',
   'argKey2' => 'argDefaultValue2',
  );
}

CakePHPの内部実装がこうなっていることが多いのですが、なかなか使い勝手がよいので自作関数でもよく使ってます。配列をプラス演算子で繋げると、足すほうの配列のキーは、足されるほうに存在していたら上書きしないのでデフォルト値のように定義できます。

上書きしたいときはarray_mergeですね。

コメント / トラックバック

コメントは受け付けていません。