为不同的访问级别生成PHP文档

时间:2017-07-28 11:02:35

标签: php phpdoc phpdocumentor2

我在一个需要生成3个或更多文档的php项目中工作,这些文档比其他文档更具限制性。 对于文档,我使用PhpDocumentor 2。 我发现的唯一方法是使用@internal标记和--parseprivate选项(用于生成私人文档),用于2级文档。

是否可以生成具有中间限制级别的第三个文档?

我还尝试使用--visibility @access标记,但它在phpDocumentor的第2版中不起作用。 或@ignore代码,但我找不到使用此代码设置代码生成第三个文档的方法。

2 个答案:

答案 0 :(得分:0)

@access标记是一个已解散的PHP4标记,在将实际可见性关键字添加到PHP5之前使用。 PhpDocumentor 1.x会识别标签,但如果关键字在代码中,标签将被忽略。 2.x不再为这些标签烦恼了。

"中级"是一个相当随意的描述。所有三个"级别"这里需要一些特殊的要求,最好由三个不同的phpdoc.xml配置文件管理。

以下是我如何描述三个级别的文档以及我如何完成这些文档的示例。

API级:我使用基于文件的参数仅记录接口。如果在docblocks中使用@api标记来表示公共API的实际单个部分,那么您可以依赖这些标记。但是,我认为文档中此信息的表示实际上只是一个突出显示的侧边栏,而我专门记录接口的方法意味着整个文档只是定义的接口(我认为是& #34; API")。

应用级:我捕获所有类,但采用仅显示公共可见性组件的默认行为。

开发级:我使用--parseprivate来显示所有组件。我也倾向于将自己的开发人员信息放入@internal标签。

同样,我会为每个配置文件使用自定义的phpdoc.xml配置文件,以便我的定义可以提交给版本控制。

答案 1 :(得分:0)

这是一个有趣的问题。可以根据特定用户量身定制文档的功能。

我会签出PHPFUI/InstaDoc。我写它是因为我对PHP文档的当前状态不满意。这是一个动态文档查看器。它是开发PHP应用程序的理想选择,因为您拥有当时实际上正在编写的新代码的所有当前文档以及所有旧代码,包括通过Composer引入的代码。它读取当前文件的doc块并动态呈现文档。因此,在签入代码之前,您实际上可以查看包含的文档。经常查看文档,您会发现问题和可以解决的问题。因此,它使工作流程变得很好。

可以很容易地设置访问级别。签出并提交问题或PR,添加用户可控制的视图非常简单。但是您的问题恰恰是InstaDoc的创建目的。我希望您觉得它有用。