即使方法存在,也会在 PHP 中触发 __call()
PHP 文档 中关于 __call() 的说明如下魔术方法:
在对象上下文中调用不可访问的方法时会触发 __call()。
有没有一种方法可以在调用实际方法之前调用 __call()
,即使方法存在? 或者,是否有其他我可以实现的钩子或提供此功能的其他方式?
如果重要的话,这是一个静态函数
(我实际上更喜欢使用__callStatic
)。
The PHP documentation says the following about the __call()
magic method:
__call() is triggered when invoking inaccessible methods in an object context.
Is there a way I can have __call()
called even when a method exists, before the actual method is called? Or, is there some other hook I can implement or another way that would provide this functionality?
If it matters, this is for a static function
(and I would actually prefer to use __callStatic
).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如何保护所有其他方法,并通过 __callStatic 代理它们?
How about just make all your other methods protected, and proxy them through __callStatic?
为什么不直接保护所有方法并使用 __call() 调用它们:
Why not just make all your methods protected and call them using __call():