2022-11-08

AST Inspector是啥?PHP AST步骤调试器怎么用?

本文给大家介绍什么是AST Inspector,怎么用PHP AST步骤调试器,希望对需要的朋友有所帮助~

当你学习为PHPStan或Rector编写自定义规则时,你也必须学习更多关于PHP编程语言的知识。

更准确地说,是关于解释器解析PHP代码的方式。解析PHP代码的结果是一棵代表代码结构的节点树,例如,你会有一个类的定义节点,一个方法的定义节点,以及这些方法中的声明节点,等等。

每个节点都可以被检查出错误(用PHPStan),或者以某种方式自动重构(用Rector)。【推荐学习:PHP视频教程

这棵节点树被称为抽象语法树,一个成功的PHPStan或Rector规则首先要从树上选择正确的节点,并将你的规则 "订阅 "给这些节点。一个常见的方法是在你的新规则中开始var_dump-ing或echo-ing节点,但我发现这是很繁琐的。

这就是为什么我创建了一个简单的命令行工具,让你检查任何给定的PHP文件的节点。

这个工具叫做AST Inspector,可以在GitHub上找到。

GitHub地址:https://github.com/matthiasnoback/php-ast-inspector/

用Composer安装它。

composer require --dev matthiasnoback/php-ast-inspector
登录后复制

然后运行。

vendor/bin/ast-inspect inspect [file.php]
登录后复制

你会看到类似于这个输出的东西。

Screenshot of PHP AST inspector

php入门到就业线上直播课:进入学习
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用

你可以通过进入下一个或上一个节点在树中导航,或者跳到所选节点的子节点中。导航可以方便地使用a,s,d,w 键。

目前该项目使用PHP-Parser库进行解析。由于PHPStan在AST中增加了额外的虚拟节点,在这个工具中显示它们也会很有用,但这需要一些额外的工作。另一个有趣的补充是显示PHPStan为被检查代码中的变量推导的类型。这也需要一些额外的工作…

现在,请试一试这个程序。

以上就是AST Inspector是啥?PHP AST步骤调试器怎么用?的详细内容,更多请关注php中文网其它相关文章!

声明:本文转载于:juejin,如有侵犯,请联系admin@php.cn删除

  • 相关标签:AST PHP
  • 程序员必备接口测试调试工具:点击使用

    Apipost = Postman + Swagger + Mock + Jmeter

    Api设计、调试、文档、自动化测试工具

    自己动手手写一个MVC框架(40节精讲/巨细/新人进阶必看):立即学习

    快速了解框架底层运行原理+提高自身开发逻辑+新人必学课程

    https://www.php.cn/php-weizijiaocheng-497527.html

    发表回复

    Your email address will not be published. Required fields are marked *