График потока приложений PHP (или график вызовов функций)

Случается, что я закончил работу над большой PHP-программой, и мне нужна программа (или простой в установке скрипт), которая рисует график управления потоком / вызовом приложения PHP (т. Е. Должна работать над несколькими файлами PHP). Уже видели такие вещи, как Graphviz, не знаете, какой из них работает для PHP?

Какие-либо предложения?

Ура!

Я никогда не использовал инструмент, который может сделать это статически (т. Е. Из исходных файлов) , но вот способ получить callgraph при выполнении скрипта / приложения.

Во-первых, вам необходимо установить расширение Xdebug – на сервере разработки / тестирования (не устанавливайте его на производственном сервере: это довольно плохо для исполнения ^^)

Затем вы можете использовать свои функции профилирования для создания файла .cachegrindout соответствующего выполнению загрузки страницы.

После этого вы можете загрузить этот файл .cachegrindout с помощью KCacheGrind (On linux – я не думаю, что есть версия Windows) ; KCacheGrind может генерировать графики вызовов из файлов .cachegrindout .

И вот пример звонка, который вы можете получить:

KCacheGrind: Callgraph экспортируется как изображение http://img.ruphp.com/function/kcachegrind-2-small.png

(Вот, он был создан из файла .cachegrindout полученного при загрузке страницы Dotclear, программного обеспечения для ведения блогов)

Doxygen может сделать это статически. Просто doxygen -d создайте файл конфигурации, а затем отредактируйте его для создания callgraphs.