raphhh / trex-parser
一个用于解析代码并提取语句的PHP工具
1.1.0
2015-12-28 13:15 UTC
Requires
- php: >=5.4
Requires (Dev)
- phpunit/phpunit: @stable
This package is auto-updated.
Last update: 2024-08-25 22:21:09 UTC
README
PHP工具,用于解析代码并提取语句。
安装
$ composer require raphhh/trex-parser
用法
ClassAnalyzer
首先,给出要分析的PHP代码
$code = 'class Foo{}'; $analyzer = new ClassAnalyzer(); $classReflections = $analyzer->getClassReflections($code);
您也可以给出一个文件路径给分析器
$filePath = 'MyClass.php'; $analyzer = new ClassAnalyzer(); $classReflections = $analyzer->getClassReflectionsFromFile($filePath);
$classReflections
是一个包含 ReflectionClass 的数组。
$objects = []; foreach($classReflections as $className => $classReflection){ $objects[$className] = $classReflection->newInstance(); }
类名
检索基本名称
$className = new ClassName('\Foo\Qux\Bar'); $className->getBaseName(); //"Bar"
检索命名空间
$className = new ClassName('\Foo\Qux\Bar'); $className->getNamespace(); //"Foo\Qux"
分割
$className = new ClassName('\Foo\Qux\Bar'); $className->split(); //["Foo", "Qux", "Bar"]