清除所有评论,但留下PHPDoc



我正在创建一个调试/doc脚本,我想忽略所有标准注释,但保留PHPDoc。

我使用的代码是:
    // Get file into an array line by line
    $line = file($file);
    // Trim all empty space and # or // comments
    array_map(function($v) {
        $v = trim($v);
        $v = preg_split("///|#/", $v)[0];
        return $v;
    }, $line);
问题是,这仍然会留下多行c风格的注释,如:
/*
This
means
nothing
*/

所以我相信我必须在整个文件中阅读,找到每个/*而忽略/** (PHPDoc)并删除一切直到*/

所以正则表达式需要多行。我对使用file()的解决方案持开放态度,但我认为file_get_content()在单独的行上发现c风格的打开和关闭评论标签会更实用。

我认为最好的方法是使用token_get_all()

最新更新