像__construct()这个很好理解,对象创建完成后,第一个被对象自动调用的方法.很明显可以感受到可以用于初始化等方面.但是__callStatic(),在对象中调用一个不可访问方法时,__call()会被调用。在静态上下文中调用一个不可访问方法时,__callStatic()会被调用.如下代码展示的,感觉好像"你传入什么,最后就输出或返回什么,这不类似于赋值吗?".tp5中,比如用来操作数据库的Db类相关代码经常用到__callStatic()和__call(),在对象中调用一个不可访问方法时,就怎么怎么样......,这种设计有什么精妙之处呢?
2 回答

一只名叫tom的猫
TA贡献1906条经验 获得超3个赞
用途很多,就看你去怎么合理利用它,比如Facade。亦或者怎样用PHP来实现枚举?-开发中的一些奇技淫巧-SegmentFault思否再或者变量保护,批量赋值,自定义错误信息,等等,更多有趣的应用。
添加回答
举报
0/150
提交
取消