__callStatic代理非静态方法

时间:2017-01-26 09:40:15

标签: php proxy static static-methods magic-methods

我正在尝试__callStatic一点。我的设置工作正常,但我想知道,如果你想代理静态调用现有方法非静态方法该怎么办。

从我在Laravel的外观系统中看到的情况来看,他们也是如此。当我尝试它虽然我收到此错误消息:

"Non-static method blablabla() should not be called statically"

它仍然试图直接指向该方法,并且每当我调用现有方法时似乎绕过__callStatic

我知道__callStatic只运行在类本身中找不到的方法。但是如何将其更改为代理我现有的非静态方法呢?

修改

我突然意识到,Laravel外墙实际上并没有直接引用他们的类,而是他们可以解决的容器实例。我想这就是他们实际上如何做到这一点,因为他们的方法实际上不存在于立面上?

0 个答案:

没有答案