PHPスクリプトで実行されているすべてのコードを動的に分析できるようにするPHPツール、拡張機能などが必要です(静的分析ツールではありません)。次に例を示します。
- いくつかのメソッドとこのインターフェイスを実装するいくつかのクラスとのインターフェイスがあります。実行時にインターフェイスのメソッドのメソッド呼び出しをインターセプトする必要があります。インターフェイスのどの実装が実装されたメソッド (名前空間を持つクラス) を呼び出したかを確認します。引数の値、メソッドの動作、戻り値、このメソッドの呼び出し前に実行されたもの、後で実行されるものなどです。
- プロパティの書き込みと読み取りを行うオブジェクト インスタンスがあり、プロパティの読み取り/書き込み、変数の割り当てをインターセプトする必要があります。等...);
- ステートメントなどのステートメントをインターセプトし、ステートメントの
echo
前に何が起こったか、ステートメントの式 (変数補間を使用)、このステートメントの後に何が実行されるかを確認します。 - if-else、if-else if、for、while、do-while、case-switch などの条件を分析して、使用されたオペランドとその値、使用された演算子などを特定します。 .
だから、このようなもの。出来ますか?を使用して実装できると思いましたがPHP ticks
、目的には少し不向きであるか、目的を達成するのは不可能に思えます ( がありdeclare(ticks=1)
、ティック ハンドラーを登録すると、ステートメントが実行されるたびにそれを呼び出すことができます。ただし、ifs、fors、whiles などは対象外で、実行中のコードを分析できません...)
何かアドバイスいただけますか?
注目してくれてありがとう!
編集: デバッガーを探しているわけではありません。コードで処理できるものが必要です。たとえば、分析して、何かが期待どおりでない場合は例外をスローします。