Ruby PHP解析库?

3

我需要从PHP文件中提取一些静态数据,并使用Ruby语言实现。我查找了一些工具,但没有找到实用的工具。

有没有人知道一个Ruby库可以让我从PHP源文件中获取AST?


1
把数据从PHP转换成Ruby更容易处理的格式,这样做会更简单吗? - Dave Newton
好主意,但在这种情况下,他需要在他的服务器上安装一个可用的PHP版本(可能是仅限于Ruby的服务器)。 - Samy Dindane
是的,服务器上也有PHP,但关键是要绕过PHP:因为a)所涉及的PHP代码丑陋且存在错误,尽管我很想重构它,但我无法这样做! b)PHP应用程序需要一个复杂的安装过程,难以自动化,并且似乎不值得安装它,准备数据库等等,只是为了转储类的某些字段。 - djfm
如果它是静态数据,你真的需要一个完整的PHP AST吗?难道没有特定的方式来限定数据,以便您可以通过简单的词法分析器/令牌化器从文件中解析它吗? - Confusion
1
这可能是我最终要做的事情。数据以嵌套数组的形式呈现,结构有点不规则。虽然解析并不是非常困难,但也不完全是小菜一碟,我想如果有一个经过验证的工具,使用它会更安全 :) - djfm
1
一个样例会让事情变得完全不同。 - Mark Thomas
1个回答

0

既然您的服务器上有php,您可以使用PHP-Parser解析您的php文件,然后输出已解析的结果(例如json格式易于阅读),供ruby读取和使用。

但是,如果您可以使用正则表达式解决问题(例如,如果您只需要获取某些常量变量值),那么这样做可能是可以的。这很难确定,具体取决于您的输入php文件的复杂性以及您需要提取多少数据。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接