TP5中一个方法为什么可以被两种方式调用?

比如max()方法为什么既能被这样调用$this->max('id')也能被静态调用self::max('id')那么这个方法写的时候是写了两种吗?

阅读 2k
2 个回答

静态方法都可以通过这两种方法调用。

内部实现的机制而已,如果静态调用了非静态的方法,在内部会触__callStatic 魔术方法, 该函数内会自动实例化的,,5.1的你可以看看门面(Facade); 机制应该是一样的!

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题