Отправить заявку

PHP: найти файл где хранится функция

Очень часто, при добавлении функционала или правки существующего приходится искать где именно вызывается та или иная функция.

Хорошо, когда проект писался самостоятельно и примерно можно запомнить какая архитектура проекта. А что делать, когда сайт достается "в наследство" и не просто сайт, а целый огромный портал и очень срочно необходимо переписать вывод на экран в какой-то функции?

Как же найти файл где хранится php функция, которую нам нужно изменить?

Если есть ssh - можно запустить поиск по проекту, а если есть только фтп - то придется или писать "поисковый скрипт на пхп" или копировать сайт на компьютер и на нем уже делать поиск нужной функции.

А можно воспользоваться штатными средствами самого php, а точнее классом ReflectionFunction.
Поместим этот код сразу за вызовом искомой функции (или, например, в самом низу сайта)

$file_function = new ReflectionFunction('function_name');
print $file_function ->getFileName() . ':' . $file_function ->getStartLine();

и на экране отобразится полный путь к файлу и номер строки:

/sata6/home/www/artkiev_com/meta/data/core/system/claster_8/run.php:114
Другие публикации