获取PHP AST节点类型

获取PHP AST节点类型,php,abstract-syntax-tree,Php,Abstract Syntax Tree,设置$ast=ast\parse_code'后,如果知道要查找的节点类型,可以与给定类型进行比较,即 $node->kind === \ast\AST_ASSIGN 但是,对于常规名称查找,库提供ast\get\u kind\u名称。例如: php > echo \ast\get_kind_name(517); AST_ASSIGN 如果您希望以更简单的方式查看AST,则该库提供了一个util.php文件,其中包含一个转储AST的函数。有关使用它的详细信息,请参见此处复制的第一个

设置$ast=ast\parse_code'后,如果知道要查找的节点类型,可以与给定类型进行比较,即

$node->kind === \ast\AST_ASSIGN
但是,对于常规名称查找,库提供ast\get\u kind\u名称。例如:

php > echo \ast\get_kind_name(517);
AST_ASSIGN
如果您希望以更简单的方式查看AST,则该库提供了一个util.php文件,其中包含一个转储AST的函数。有关使用它的详细信息,请参见此处复制的第一个示例

require 'path/to/util.php';
echo ast_dump(ast\parse_code('<?php $a=1;', $version=50)), "\n";

我一直在寻找的是一个好名字和一个垃圾场。谢谢为什么不用?它有更清晰的基于对象的API,易于扩展和使用。
require 'path/to/util.php';
echo ast_dump(ast\parse_code('<?php $a=1;', $version=50)), "\n";