質問

PHPのコールグラフを生成するgprofに似たユーティリティを探していますコード。グラフィカルな出力、または少なくともGraphVizなどで解釈できるテキスト出力を生成できるものが望ましいのですが、プレーンテキスト出力で解決します。

これを実行できるツールを知っている人はいますか?

役に立ちましたか?

解決

間違いなく Doxygen を試します。 PHPをサポートしており、作成する呼び出しグラフと呼び出しグラフは、「外部コード」の調査に非常に役立ちました。以前に私のために。

doxygen呼び出しグラフの例

他のヒント

PHPで記述されたソースコードを分析してそれを生成できるものが存在するかどうかはわかりません...しかし、コードを実行しているときに可能性があります。

Xdebug 拡張機能をご覧ください。 PHPのプロファイリングを行い、 LinuxのKCacheGrind

そして、これはある種のコールグラフを生成できます。


PHPUNitと統合して、 phpCallGraph というプロジェクトがあります。あなたも助けることができます...そして、私がそれを見ると、進行中の作業があるようです changelog

既に述べたように、Doxygenは呼び出しグラフを生成できます。

Xdebugは、関数トレースを生成できます。これらはランタイムコードから生成されるという点でdoxygenのグラフと異なりますが、doxygenは静的に生成されます。関数のトレースを視覚的な表現に変えることができるツールは知りませんが、難しくはないはずです。

bytekit 拡張機能もあります。この拡張機能の主な機能は、PHPソースコードが表示するバイトコードを表示することです生成します。これをグラフで表示できます。これは本質的にコールグラフです。

これは古いトピックです-しかし、誰かがそれを便利だと思った場合に備えて...

  • kKCachegrindは、実際の実行スレッドを示すコールグラフを生成します。

  • PHPCallGraph は、静的分析を実行するgraphvizを中心に非常に簡単です

  • 自分の努力。PHPCallGraphに似ていますが、ループ/条件構造に関する情報を追加し、ノードにコールバックを追加する方法を提供します。一部のサンプルスクリプトはツールキットにバンドルされていますが、独自のスクリプトに埋め込むこともできます。

インタラクティブなものが必要な場合は、新しい nWire for PHP をご覧ください。これは、PDT 2.1およびZend Studio 7.0で動作するEclipseプラグインです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top