2009年06月08日

CakePHPのafter,beforeフック系メソッドの順番

「むしの手記。」さんが
CakePHPのフック系メソッドの動きについてまとめられていましたので、
さらにComponentのメソッドも含めて試してみました。

結果はこちら

Component::initialize(&$controller)

Controller::beforeFilter()
↓ ↓
↓ Component::startup(&$controller)

Controller::Action()


Controller::beforeRender()
↓ ↓
↓ Component::beforRender(&$controller)

↓ Helper::beforeLayout()
↓ ↓
---- View->renderLayout() ---------------------
↓ ↓
↓ Helper::afterLayout()

---- View->render() ---------------------------

↓ Component::shutdown(&$controller)
↓ ↓
Controller::afterFilter()

Helper::afterRender()




想外だったのは、Controller の beforeRender の後に Component の beforeRender が動くこと。なんとなく Component のほうが先に動くような気がしていた。

この記事へのトラックバックURL

http://blogs.dion.ne.jp/muller/tb.cgi/8456100
※半角英数字のみのトラックバックは受信されません。
※言及リンクのないトラックバックは受信されません。
 
※半角英数字のみのコメントは投稿できません。