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 回答