Есть ли способ вывести определенную пользователем или системную функцию так же, как print_r
или же var_dump
для переменных в PHP?
например:
dump('echo');
или же
dump('my_function');
Такая функция была бы мощной.
Помогут некоторые инструменты вне PHP: отладчик, такой как gdb; инструмент рефакторинга, такой как resharper / MonoDev и некоторые инструменты трассировки, такие как strace / dtrace. Вы также можете использовать некоторые инструменты, которые раскрывают внутренние Дерика VLD или же PVT, который может выводить коды операций в читаемый формат, оттуда нет ничего невозможного (заново) создать код из него.
Особенно в отношении коммерческих расширений и продуктов PHP, таких как Zend Core / Platform или Zend Server, это будет метод обратного инжиниринга / дизассемблирования, потому что вы запрашиваете код расширения C / C ++ изнутри PHP.
Вам не понадобится эта техника!
Преимущество этого заключается в том, что некоторые фреймворки, такие как Zend, расширяют некоторые
функция для глобальных функций PHP, таких как zend_report_statistics и I
хочу видеть их структуры на моих страницах отладки, потому что они скомпилированы
в DLL-файлах.
Нет никакой реальной выгоды, кроме отладки, в том, чтобы увидеть внутреннюю часть функции небольшой статистики.
И, кстати, первое, что вы увидите, когда делаете dump('echo');
в том, что echo
это языковая конструкция, а не функция.
Других решений пока нет …