PHP には get_called_class(); があります。呼び出されたクラスの名前を返します。呼び出されたメソッドの名前を返す関数はありますか? たとえば、親クラスがあります。
class Parent
{
public function __construct()
{
echo get_called_class(); // echos "Child"
// how do I echo "myMethod"
}
}
それから私は子供の親を持っています:
class Child extends Parent
{
public function myMethod()
{
}
}
私が電話した場合:
new Parent();
__construct から呼び出されるメソッドの名前 (この場合は "myMethod") を取得するにはどうすればよいですか? 使用する__FUNCTION__
と が返されますParent::__construct
。
EDIT:呼び出されたクラスとメソッドをビュー関数に自動的に渡そうとしています。したがって、コントローラーアクションで次のことができます。
$this->render();
それ以外の:
$this->render('account/new');
そして、私の __construct は自動的に設定されます
$controller = "account"; // from get_called_class();
$action = "new"; // gotten how?!