从PHP文件中提取函数声明
我希望为我的框架和应用程序创建一个现场API参考 基本上,假设我有一个类文件从PHP文件中提取函数声明,php,parsing,documentation,Php,Parsing,Documentation,我希望为我的框架和应用程序创建一个现场API参考 基本上,假设我有一个类文件model.class.php: class Model extends Object { ... code here ... // Separates results into pages. // Returns Paginator object. final public function paginate($perpage = 10) { ... more c
model.class.php
:
class Model extends Object {
... code here ...
// Separates results into pages.
// Returns Paginator object.
final public function paginate($perpage = 10) {
... more code here ...
}
}
我希望能够生成一个引用,我的开发人员可以快速引用它,以便知道哪些函数可以调用。他们只需要看到每个函数和声明行正上方的注释。类似的(类似于C++头文件):
我做了一些研究,看起来很不错(使用反射类),但是,我不确定如何保留评论
有什么想法吗
我想保留当前的注释格式。我自己和正在编写代码的人都讨厌与PHPDocumentor相关的冗长。更不用说重写整个项目的注释需要几年时间,所以我只想保留//注释的纯文本格式。为什么不直接运行代码呢
PHPDoc与JavaDoc相同,将在函数上方的docblock中保留所有参数和注释
编辑:由于您不需要PHPDoc,我认为编写一个正则表达式解析器可能是最简单的,因为反射不会向您提供任何周围的注释
获取注释的PHP代码:
if(preg_match("@//(.+)$@",$line,$match)>0)
{
echo "Comment is: ".$match[1];
}
这就是为什么。您可以按照特定的规则以特定的方式对代码进行注释,完成后通过解析器运行代码。它输出的正是您想要的。谢谢。在
/
和换行符之间,正则表达式是什么?preg_match(“@/(.+)$@,$line,$match)非常感谢您的快速响应。
if(preg_match("@//(.+)$@",$line,$match)>0)
{
echo "Comment is: ".$match[1];
}