由于 PHPcall_user_method()
和call_user_method_array()
标记为已弃用,我想知道推荐什么替代方案?
一种方法是使用call_user_func()
,因为通过给一个带有对象和方法名称的数组作为第一个参数,它的作用与不推荐使用的函数相同。由于这个函数没有被标记为弃用,我认为原因不是它们的非 OOP 风格的用法吗?
我能想到的另一种方法是使用Reflection API,这可能是最舒适且面向未来的替代方案。尽管如此,它的代码更多,我可以想象它比使用上面提到的函数要慢。
我感兴趣的是:
- 是否有一种全新的技术可以通过名称调用对象的方法?
- 哪个是最快/最好/官方的替代品?
- 弃用的原因是什么?