加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

用PHP编写的语言分析器库

发布时间:2020-12-13 18:07:45 所属栏目:PHP教程 来源:网络整理
导读:我正在寻找一个用 PHP编写的语言解析器. 目标是阅读自定义语言,而不是阅读PHP代码. 基本上,我想指定语言语法,给出代码片段并返回表示它的结构.然后我可以遍历该结构来执行代码片段.我相信结构将是一个AST,但我不知道这是否是唯一的选择(我与解析器及其词汇不
我正在寻找一个用 PHP编写的语言解析器.

目标是阅读自定义语言,而不是阅读PHP代码.

基本上,我想指定语言语法,给出代码片段并返回表示它的结构.然后我可以遍历该结构来执行代码片段.我相信结构将是一个AST,但我不知道这是否是唯一的选择(我与解析器及其词汇不相关).

我看了一下Doctrine DQL parser,但它看起来不像通用语言解析器.

这不是一个完整的列表,如果您正在寻找PHP运行时词法分析器/解析器,NikiC的一个特殊项目是 Phlexy.

你可以在PHP-Parser内找到一个用例,也可以在他写的内容中找到.这是PHP语言的解析器,带有抽象语法树(AST),部分是从语法文件生成的.

我从来没有把它做到这么远,从我自己多年来的研究来看,PHP用户空间中没有很多这样的项目,而这两个来自NikiC的库真的是一个非常好的例子.

如果你正在寻找一个遵循更多flex规则的词法分析器,我在XDOM中写了一个lexes CSS选择器语法,它也是一个解析器但是解析器不是基于语法文件,即使它存在于CSS规范中.词法分析器基于.lex文件.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读