0

アクセス権があり、編集する必要がある大規模なインクルードが豊富な Web サイトで、何かを見つけるのに苦労していることに気づきました。

探しているものが見つかるはずのphpファイルを見ると、それがいくつかのインクルードファイルから作られていることがわかり、探しているものの兆候はありません。それは問題ありません。インクルードを調べます。それらのインクルードを調べて、それらもいくつかのインクルードで構成されていることを発見するまで、ツリーをさらに下に移動します。

ページを構成するインクルードのある種のツリー構造を生成するために使用できるプログラムはありますか?

さらに、インクルードに含まれているものは何でも取り込んだが、PHP 自体は処理していない PHP ページの出力を表示する方法を備えた機能が欲しいです。

4

4 に答える 4

3

インクルードのツリーについてはわかりませんが (ソース ファイルをスキャンするコードを記述しないと)、get_included_files関数を使用して、インクルードされたすべてのファイルのリストを取得できます。

于 2012-07-10T16:47:30.080 に答える
0

PHP は、すべてのインクルードが実行とは別に行われる Java とは異なります。「include」自体は、コードの実行中に呼び出される関数であるため、これは不可能です。

正直なところ、これができたとしても、探しているものを見つけるのに役立つとは思えません。一般に、物事を見つける最善の方法は、サイトのディレクトリ構造を理解するか、ディレクトリ内のすべてのファイルを検索できる IDE (Eclipse、Netbeans など) またはテキスト エディタ (NotePad++ など) を使用することです。サブディレクトリ。

于 2012-07-10T16:53:25.353 に答える
0

多分このようなもの。

http://www.php.net/manual/en/function.debug-print-backtrace.php

于 2012-07-10T16:53:32.123 に答える
0

xdebug (php 拡張機能)の高度な機能を使用すると、それを実現できます。

より具体的Function Tracesには、すべての関数呼び出しと関数が含まれているファイルを表示するため、そこから、含まれているすべてのファイルのリストを取得できます。

一種の古いリンクですが、ほとんどはまだ適用されますhttp://devzone.zend.com/1139/profiling-php-applications-with-xdebug/

于 2012-07-10T17:02:47.357 に答える