Поскольку PHP call_user_method()
и call_user_method_array()
отмечены устаревшими, мне интересно, какая альтернатива рекомендуется?
Одним из способов было бы использовать call_user_func()
, потому что, передавая массив с объектом и именем метода в качестве первого аргумента, такие же, как устаревшие функции. Поскольку эта функция не отмечена устаревшей, я предполагаю, что причина заключается не в их не-ООП-стильном использовании?
Другим способом, о котором я могу думать, является использование Reflection API, который может быть наиболее удобной и ориентированной на будущее альтернативой. Тем не менее, это больше кода, и я мог бы заметить, что он медленнее, чем использование упомянутых выше функций.
Что меня интересует:
- Существует ли совершенно новая методика вызова методов объекта по имени?
- Какая самая быстрая/лучшая/официальная замена?
- В чем причина устаревания?