Unknown::Programmingスマートフォン用の表示で見るUnknown::Programmingこの広告は、90日以上更新していないブログに表示しています。Blog::koyhoge::Techを読んで感じたことでも。後から引数追加とかって結構あるんで予めオプション系の引数を増やしやすいようにするわけです。引用元の例では固定引数が一つとオプション用の引数が渡せるようになっています。$optionsこれだとオプション引数の追加はいくらでも出来ますが、下記のように省略可能な引数を増やしたい場合に困ります。$optionsで、こういう拡張をできるようにするために僕が良くやるのが引数の最後を常にオプション引数と見なすやり方です。getItemsByMode('key','key2',$opts);って感じになりますね。Perlのソースみたいになっちゃいましたね。いつかのエントリでも書いたんですけどPHPでPerlっぽく書くのは嫌われるらしいのであまりやりすぎは良くないとは思いますが、こういう実装になっていると後で機能拡張がしやすいのは事実なのでどこまでやるか微妙なところです。ことのついでにもう一つ。エラーにはならず、modeにデフォルト引数が適応されてしまう。1));こういう場合って元のコードのままだとデフォルト引数が適応されちゃうので意図した動きにならない。想定して無いオプション変数が渡された時にエラーになるようにしといた方が後々のためにも良いかと思われる。ハッシュのキーをどんどん削除していくので$optionsは空になってるはず。最終的に$optionsに要素があったら変なオプション引数が渡されたってことでエラーにするって感じ。最後にこれをPerlで書いた場合の例でも書いておしまいとします。良いコードが書けなかったのでやめました。17:39メソッドの引数を柔軟にするあれの件Tweet広告を非表示にする関連記事2009-12-18PHPのhtmltemplate.incでオブジェクトやらフィルターやらひょんなことからhtmltemplate.incというHTMLテンプレートエン...2008-08-18HTML::MobileJP::Filter::DoCoMoGUIDで同一ホスト内でのguid=ON...今やってるやつでCatalyst::View::MobileJpFilterを使って実装...2008-05-29Perlが初めての人に教えてあげたいちょっとしたことタイトルは釣りです。実際のタイトルは「Perlのオブジェクト指...2008-03-04PHP版HTML::FillInForm大幅バージョンアップPHP版のHTML_FillInFormを大幅にバージョンアップしました。今...2007-10-20PHPクラスClass_LoadClassをバージョンアップしますた。月別アーカイブはてなブログをはじめよう!fbisさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。