PHPファイルへのパスを保持する単一の引数を受け取り、指定されたファイルを解析して次のようなものを返す関数を作成したいと思います:
class NameOfTheClass
function Method1($arg1, $arg2, $arg2)
private function Method2($arg1, $arg2, $arg2)
public function Method2($arg1, $arg2, $arg2)
abstract class AnotherClass
function Method1($arg1, $arg2, $arg2)
private function Method2($arg1, $arg2, $arg2)
public function Method2($arg1, $arg2, $arg2)
function SomeFunction($arg1, $arg2, $arg3)
この関数は、指定されたファイルに存在するすべてのクラス、メソッド、および関数を、定義されたすべての識別子 (abstract、public、private、protected、static、extend、interfaces など) とともに返す必要があります。
私の最初の考えは、これを行うために正規表現を使用することでしたが、これらはコメントで非常にうまく動作しません。
別の可能な解決策は、次の組み込み PHP 関数を使用することでした。
get_declared_classes
get_declared_interfaces
get_defined_functions
get_class_methods
ただし、これらの関数では、クラス/メソッド/関数が定義されているファイルを表示できないため、あまり役に立ちません。
Tokenizer 拡張機能が私の問題の解決策であると信じていますが、この拡張機能を使用したことはありません。