在Kohana中记录每个方法调用?

在Kohana中记录每个方法调用?,kohana,Kohana,如何在Kohana应用程序中的控制器和模型中记录每个方法调用 我想清理我的脚本并删除未使用的方法。您可以使用以下内容扩展Kohana_控制器和Kohana_模型: public function __call($name, $arguments) { // Log call here // Now return the real method return parent::__call($name, $arguments) } __call()相当慢,因此您最终需要删

如何在Kohana应用程序中的控制器和模型中记录每个方法调用


我想清理我的脚本并删除未使用的方法。

您可以使用以下内容扩展Kohana_控制器和Kohana_模型:

public function __call($name, $arguments)
{
    // Log call here

    // Now return the real method
    return parent::__call($name, $arguments)
}
__call()相当慢,因此您最终需要删除它们。

您可以使用
before()
after()
方法记录控制器名称和操作(使用
$this->request
获取这些值)

对于模型没有这样的方法,但我不喜欢为此使用
\u call()
。您是否应该在控制器中登录您的模型?像这样:

// somewhere in controller 
$cid = $this->request->param('cat_id');
// call custom model method
$articles = ORM::factory('article')->get_by_category($cid);
// log model call
// etc

不是只有在调用未定义的对象方法时才调用_call()吗?你是对的,我有个大脑屁(使用比卡维隆的建议。