親クラスから子クラス名の取得方法

●目的/背景
担当案件でmojaviのソースをメンテしている。
そこそこのスパゲティソースで、内部的にactionがforwardが多用されているため、
デバッグの際、実行されているactionがわかりにくい。


●対応
Controllerクラスを眺めていると、実行中のmoduleやaction名は Controller->currentHoge プロパティに格納されている模様。
なので↓のコードを適切な場所に仕込めばOK.

echo $controller->currentAction;

場所はどこがいいかな?
module単位の基底action->initialize() か mojavi core の action->initialize() ってとこかな。
#以降にsession_start()や、setCookie()やってるとダメだけどね


●余談
PHP5からはリフレクションを使って実現できるみたいです。
【 ほでなすPHP 】 PHP5の基本 -> リフレクション
詳細はまた。。今日は時間ないです。