9

大きなPHPプログラムで作業することになり、PHPアプリケーションのフロー制御/コールグラフを描画するプログラム(またはインストールが簡単なスクリプト)が必要になります(つまり、複数のPHPファイルで動作する必要があります)。すでにGraphvizのようなものを見ましたが、どれがPHPで機能するかわかりませんか?

助言がありますか?

乾杯!

4

2 に答える 2

9

これを静的に(つまり、ソースファイルから)実行できるツールを使用したことはありませんが、スクリプト/アプリケーションの実行時にコールグラフを取得する方法は次のとおりです。


まず、Xdebug拡張機能を開発/テストサーバーにインストールする必要があります(本番サーバーにはインストールしないでください。パフォーマンスにはかなり悪いです^^)

次に、そのプロファイリング機能.cachegrindoutを使用して、ページロードの実行に対応するファイルを生成できます。


その後、KCacheGrind.cachegrindoutを使用してそのファイルをロードできます(Linuxの場合-Windowsバージョンはないと思います) ; KCacheGrindは、ファイルからコールグラフを生成できます。 .cachegrindout

そして、これがあなたが得ることができるコールグラフの例です:

KCacheGrind:画像としてエクスポートされたコールグラフ
(出典:pascal-martin.fr

.cachegrindout(これは、ブログソフトウェアであるDotclearのページをロードしているときに取得したファイルから生成されたものです)

于 2010-04-27T10:46:30.510 に答える
2

Doxygenは静的にそれを行うことができます。doxygen -dを使用して構成ファイルを作成し、それを編集してコールグラフを作成します。

于 2013-08-08T08:29:20.960 に答える