Отражение определенно останется. Вы можете использовать его, но имейте в виду, что он, как говорят, медленный и избыточный для простых UseCases. Использование одной из функций из пакета функций Classes/Objects часто является более быстрой альтернативой.
Случай, когда Reflection может пригодиться, - это разбор аннотаций в DocBlock класса. Например, PHPUnit использует аннотацию @test, чтобы сообщить PHPUnit TestRunner, что он должен считать метод тестом. Аннотация @covers поможет ему собрать данные о покрытии кода. Фреймворк FLOW3 использует аннотации для своего каркаса AOP.
К сожалению, некоторые из новых дополнений в PHP > 5.3 еще не настолько документированы. Просто посмотрите на SPL. То же самое. Однако это не означает, что вы не можете использовать его. API Reflection очень выразителен, и его легко понять по именам методов. Кроме того, Google часто публикует в блогах статьи о том, как использовать те или иные расширения. Для Reflection API посмотрите:
и для SPL
Недавно я обнаружил кое-что интересное. Начиная с версии 5.1.2, вы можете вызывать Reflection API из командной строки:
$php --rf strtotime
Function [ <internal:date> function strtotime ] {
- Parameters [2] {
Parameter #0 [ <required> $time ]
Parameter #1 [ <optional> $now ]
}
}