【发布时间】:2014-07-16 06:43:45
【问题描述】:
是否有一种简单的方法可以从 PHP 文件中解析函数及其代码,以便您可以将每个函数的内容分别记录在数据库中?
我想将每个单独的函数和函数的 cmets 记录为单独的数据库条目。
我开始从头开始编写自己的脚本来解析 PHP 文件,但看起来这确实应该是其他人以前已经做过的事情。所以在重新发明轮子之前,我想问问你们中是否有人知道另一种方法?
我发现 get_defined_functions() 提供了当前加载的函数名称。但我也在寻找函数的参数、内容及其 cmets。
【问题讨论】:
-
你的意思是像Nikic's Parser这样的东西吗?虽然我不确定你为什么要在数据库中记录所有这些细节......当然标准是使用 PHPDocumentor
-
嗨,马克,感谢您的回复!我不是要记录它,我只是打算根据代码更改的时间进行一些报告,以用于 QA 类型的目的。例如,知道文件最近被编辑不如知道文件中的特定函数被编辑有用。那种报道。我只是希望找到一种方法来记录每次更改时的确切功能代码。谢谢!
-
肯定是 github、mercurial 或 svn 等版本控制系统可以提供的信息类型
-
您是否需要知道在给定时间进行了哪些更改或简单的更改?使用 sha256 或类似方法对函数进行实际散列可能很有用,然后您可以轻松比较散列以查看它是否发生了变化。我实际上正在构建一个基于散列文件内容的缓存系统。我还建议查看 php 中的反射类。