对于 ActionScript 2,我使用了 NaturalDocs。但是它对 PHP 的支持很差。到目前为止,我已经看过doxygen和phpDocumentor,但在我看来它们的输出非常丑陋。有人对 PHP 的自动文档生成有任何经验吗?我更喜欢能够使用 javadoc 风格的标签,它们写起来很短,而且很容易记住。
9 回答
ApiGen
ApiGen 支持 PHP 5.3 命名空间、包、文档之间的链接、对 PHP 标准类和通用文档的交叉引用、突出显示的源代码的创建以及对 PHP 5.4 特征的实验性支持。
DocBlox
http://www.docblox-project.org/
PHP 5.3 兼容 API 文档生成器,针对各种规模和持续集成的项目。
能够完全解析和转换 Zend Framework 2
有两个众所周知且常用的工具可以从 docblocks 生成 API 文档:
- phpDocumentor,它是特定于 PHP 的,可能是 PHP 项目中最常用的工具之一
- 和Doxygen,它更多地用于 C,但被某些人用于 PHP。
关于“指南”:我会说这取决于您的项目,但是,至少,我希望看到:
- 描述方法/函数的作用
- 参数,与
@param type name description of the parameter
- 返回值,与
@return type description of the return value
- 例外,与
@throws type description of the exception that can be thrown
一个很棒的事情是最近的 IDE (例如Eclipse PDT)可以读取和解释这些标记,以便在您编码时提供提示;-)
此外,越来越多的 PHP 工具将 php docblocks 用于文档以外的其他目的。
例如,PHPUnit 允许您使用一些特定的标签来指定一些与测试相关的东西——请参阅Annotations。
在 Javadoc 样式的内联注释方面,PHPDoc 可能与您将获得的一样好。您可能还想查看PHPXRef。
是的,phpDocumentor ( http://www.phpdoc.org/ ) 是 PHP 自动文档可接受的标准工具。这是事实上的标准。
在编写 PHP 代码文档时,遵循通用的 JavaDoc 代码指南是可以接受的。但是,您会遇到这样的情况,因为 PHP 和 Java 是不同的语言。
例如,PHP 函数没有返回类型,并且函数不可避免地(有时是可取的)返回具有一个上下文的一种类型,以及具有第二个上下文的另一种类型。JavaDoc 指南不会对此有所帮助,因为在 Java 中是不可能做到的。
查看 PHPDoctor http://peej.github.com/phpdoctor/,这是一个简单但功能齐全的 PHP 的 Javadoc 克隆。
phpDocumentor 可以以类似于 php.net 文档的样式输出(并且它内置了 smarty 和非 smarty 布局)
Wordpress 代码库是使用 phpdoc 标记记录的(请参阅this),它通常非常好 - 它在这里使用phpDocumentor呈现。
我编写的大部分代码都足够重要,以至于我需要考虑自动生成文档是在 .Net 中完成的,所以我不能给出太多文档作者的观点
如果丑陋是一个问题,我只需将样式表切换为自定义样式表。如果您不想覆盖生成的,可以使用 Firefox 插件,例如Stylish。
您可以编辑模板文件以添加您自己的样式表来覆盖现有的样式表。