1

ファイル内のすべてのプライベート、パブリック、静的、保護されたメソッドを取得する最良の方法を見つけようとしています....それを行うための最良の方法は何でしょうか。現在 file_get_contents を実行すると、ファイル全体がダンプされますが、メソッドのみを提供するある種の正規表現が必要です

$filecontent = file_get_contents($fn->getPath()."/".$fn->getFilename());

これは使えるか不安

preg_match("/private function | protected function | public function | public static function/") etc etc

もっと良い方法があれば、それについても知りたいです

4

1 に答える 1

3

リフレクションを使用し、パスが PSR-0 であると仮定すると、次のように何かを実行できます。

<?php

$document_root = "/document/root";

$file = "{$document_root}/PSR/Compatible/Path/ClassName.php";

$class = str_replace(
  array($document_root, DIRECTORY_SEPARATOR, ".php"),
  array("", "\\", ""),
  $file
);

$reflector = new \ReflectionClass($class);

var_dump($reflector->getMethods());

?>

お役に立てれば。

于 2013-10-24T22:09:53.310 に答える