PHP-Doxygen协作图

PHP-Doxygen协作图,php,documentation,doxygen,Php,Documentation,Doxygen,我已经开始使用doxygen从PHP代码生成文档。我注意到在生成的输出中有两个图——继承和协作。我知道继承一个,但合作一个在阅读手册后引起了我的兴趣: 如果协作图和HAVE DOT标记设置为YES,则doxygen 将为每个记录的类生成一个图形,显示直接和 间接实现依赖项(继承、包含和 类引用该类的变量)和其他文档化的类 我从描述中得到的印象是,组合关系也应该由协作图表示,但它似乎总是与继承关系相同 我能做些什么来提示Doxygen我想在这个图表中出现的东西吗?它不适用于PHP吗?我从未尝试过用

我已经开始使用doxygen从PHP代码生成文档。我注意到在生成的输出中有两个图——继承和协作。我知道继承一个,但合作一个在阅读手册后引起了我的兴趣:

如果协作图和HAVE DOT标记设置为YES,则doxygen 将为每个记录的类生成一个图形,显示直接和 间接实现依赖项(继承、包含和 类引用该类的变量)和其他文档化的类

我从描述中得到的印象是,组合关系也应该由协作图表示,但它似乎总是与继承关系相同


我能做些什么来提示Doxygen我想在这个图表中出现的东西吗?它不适用于PHP吗?

我从未尝试过用doxygen生成协作图,但我相信您必须像这样记录代码:

class B {}

class A {
    /**
     * @var B
     */
    private $b;
}

如果省略docblock,doxygen可能无法识别$b属于b类型,因此不会在协作关系图中包含b。

请尝试遵循此处的说明

这可能是因为您使用它的类在协作关系图中除了继承之外没有太多可显示的内容吗

你在复合类上试过吗?(包含其他类的成员对象的类)


在这些情况下(至少在C++中),它生成了表示各种关系的复杂彩色编码图。

我没有看到任何关于协作图的内容。我也不使用Symfony,我已经这样评论了我的代码,因为它对Eclipse非常有帮助。不幸的是,协作图在任何方面都没有用处。这正是问题所在-我已经记录了关系,它应该显示组合,但不会。你认为这可能是Doxygen的PHP解析器中的错误吗?我相信这是Doxygen的PHP解析器中缺少的功能(我用Doxygen 1.7.4进行了测试);Doxygen似乎从未为任何类成员获取任何文档,因此,它从未发现某个成员是对另一个类的引用。我想,一旦Doxygen解析器学会如何收集类成员文档(特别是用@var声明的成员类型),这就开始起作用了。