Есть ли отражение/интроспекция/магия в PHP, которая позволит вам найти файл PHP, где определен конкретный класс (или функция)?
Другими словами, у меня есть имя класса PHP или экземпляр объекта. Я хочу передать это что-то (функция, класс Reflection и т.д.), Которые вернут путь к файловой системе, где был определен класс.
/path/to/class/definition.php
Я понимаю, что я мог бы использовать (get_included_files())
, чтобы получить список всех файлов, которые были включены до сих пор, а затем проанализировать их все вручную, но для этого много доступа к файловой системе для одной попытки.
Я также понимаю, что могу написать дополнительный код в нашем механизме __autoload, который где-то кэширует эту информацию. Тем не менее, изменение существующей __autoload не зависит от ситуации, о которой я имею в виду.
Услышав о расширениях, которые могут это сделать, было бы интересно, но в конечном итоге мне понравилось бы что-то, что можно запустить с установкой "запаса".