php类magick函数';行不通

php类magick函数';行不通,php,class,call,Php,Class,Call,您好,我正在尝试使用magick类函数调用来存储调试信息,但没有存储在 __召唤 function __call($method, $arguments) { $load_functions = array('get', 'insert', 'update', 'delete', 'rawQuery'); if(in_array($method, $load_functions)) { array_push($this->_debug, mic

您好,我正在尝试使用magick类函数调用来存储调试信息,但没有存储在

__召唤

function __call($method, $arguments)
{

    $load_functions = array('get', 'insert', 'update', 'delete', 'rawQuery');

    if(in_array($method, $load_functions))
    {

        array_push($this->_debug, microtime(true));

    }

}
执行

$app->database->setbase('MyBase');
$query = $app->database->get('MEMB_INFO');

$app->database->debug();

没有存储到$this->\u调试数组中$应用程序->数据库->调试();返回空数组。

Magic method\uu调用仅对不存在的方法调用。但我想你的方法是存在的

如果您真的想检查调用的方法,可以使用decorator。该类保存原始类的实例,和原始类具有相同的接口,并且每个方法调用都委托回原始对象。您可以向decorator方法添加自定义调试逻辑(或者使用_调用并创建通用调试decorator)。当然,您需要将decorator实例注入$app->database。根据您的框架和环境(prod与dev等),可以通过多种方式完成


我所想的示例-

您是否知道,只有在调用的函数不存在的情况下才会调用调用函数?您要扩展的类是什么?您必须发布一个完整的示例来重现问题。