1

对不起,如果标题看起来很奇怪,我不知道如何称呼它。我正在检查一个框架,我想知道它是如何工作的?

<?php
//namespace and use

abstract class Model {
    //...
    public function __call($method,$params){
        //some stuff
        return static::$$method;
    }
}

它是一个抽象类,那么 static 指的是什么类呢?(考虑到它没有扩展任何东西)我尝试了var_dump方法,但该方法不在该类中。为什么它有一个双美元符号。

编辑:哦,它会调用该__callStatic方法。我需要药片。

4

1 回答 1

3

它被称为“后期静态绑定”,与self始终引用定义它的上下文(“类”)不同,它始终引用调用它的上下文。

于 2012-07-11T21:07:46.340 回答