とあるプログラマの備忘録

都内某所に住むプログラマが自分用に備忘録を残すという趣旨のブログです。はてなダイアリーから移動しました!

SamuraiFwのFilter機能をつかってみる!

たとえば簡単なサイトでも定数とかって使うと思うんですけど、
じゃぁその定数とか設定ファイルを置くのってどこよ?

ってなると結構意見が分かれますよねー。

今回も、実装時にそんな疑問にぶち当たって、
「どこにおけばいいんだ?」
つか定数以外でも全画面で必ず通したい処理ってどうすればいいんだ?

って事になり聞いてみました。

SamuraiFWにはFilter機能というのがあり、.ymlファイルに書くことによってそういうことができるらしい。
早速作ってみる。

samurai add-filter [フィルター名]

そうすると、component/にfilterディレクトリが作成されて、
その中に、[フィルター名].class.phpというファイルがある。

これをつかえば無敵っす!

後はcomponent/action/samurai.ymlにたとえばtest.class.phpとうフィルターを作成したのなら、

Test : 

と書くだけでおk。

    /**
     * @override
     */
    protected function _prefilter()
    {
        parent::_prefilter();
        
        /*すべてのアクションの実行前に行いたい処理を書く*/
        
    }


    /**
     * @override
     */
    protected function _postfilter()
    {
        parent::_postfilter();
        
        /*すべてのアクションの実行前に行いたい処理を書く*/
    }