我如何忽略phpDocumentor中的特定文件

时间:2012-12-28 20:28:12

标签: php documentation phpdoc

我正在记录我使用phpDocumentor在PHP中构建的程序。一切都很完美,但文档显示我有近100个错误,因为它正在读取我用来将文件上传到我的服务器的文件,但我没有创建。 是否可以忽略那个给我所有错误的特定文件?这是我正在执行的命令,用于生成文档文件:

phpdoc run -d /var/www/html/myprogram/ -t /var/www/html/myprogram/documentation

我试图忽略的文件位于/myprogram目录内,如下所示:

/modules/module1/uploader.php

我找到了一些关于--ignore使用的信息,但我不知道是否指的是某些特定的目录。

是否可以在index.php文件中写一些指示phpDocumentor忽略某些文件的内容?

2 个答案:

答案 0 :(得分:7)

--ignore flag将接受单个文件名(以及目录名称或glob表达式):

phpdoc run --ignore /var/www/html/myprogram/modules/module1/uploader.php -d /var/www/html/myprogram/ -t /var/www/html/myprogram/documentation

或者因为它将接受部分目录,所以可以缩短为:

phpdoc run --ignore modules/module1/uploader.php -d /var/www/html/myprogram/ -t /var/www/html/myprogram/documentation

答案 1 :(得分:2)

我希望,我的答案不会被低估。我在这里包括我的答案以供将来参考,以及其他可能从中受益的人。

在项目的根目录中创建phpdoc.xml配置文件有很大帮助,而不是通过包含多个include / ignore选项来使命令复杂化。可以轻松地将文件中的所有必需选项捆绑在一起,phpdoc将读取这些选项以帮助构建文档。

例如,我的项目的phpdoc.xml配置文件如下,其中包含phpdoc个选项:

<?xml version="1.0" encoding="UTF-8" ?>
<phpdoc>
    <title>App Plugins Documentations</title>
    <parser>
        <target>reference/docs</target>
    </parser>
    <transformer>
        <target>reference/docs</target>
    </transformer>
    <files>
        <directory>.</directory> <!-- Scan and parse all the php files except those found in the paths below -->
        <ignore>assets/*</ignore>
        <ignore>includes/gm-virtual-pages/*</ignore>
        <ignore>includes/app_virtual_pages/*</ignore>
        <ignore>includes/third-party/*</ignore>
        <ignore>includes/vendor/*</ignore>
        <ignore>reference/docs/*</ignore>
        <ignore>storage/*</ignore>
        <ignore>views/*</ignore>
        <ignore>index.php</ignore> <!-- Ignore all the index.php files -->
    </files>
</phpdoc>

这样你可以包含/忽略多个路径和文件;甚至是你问题中的特定文件。您所要做的就是在文件的相对路径中包含ignore选项。

<ignore>/modules/module1/uploader.php</ignore>

只需在项目的根目录中运行phpdoc命令,其中包含phpdoc.xml配置文件。