在phpDoc生成的文档中,我可以通过以下方式使phpDoc生成一个指向给定param的自定义类型定义的链接
@param CustomType $variablename而且效果很好。但是,我目前正在编写的代码需要CustomType[]参数,即所述CustomType的数组。我希望文档清楚地表明需要一个数组,但当我使用
@param CustomType[] $variablenamephpDoc不再识别该类型,因此无法链接到它的定义。在这种情况下,这是非常重要的--我正在记录一个API,它具有一些需要提供的相当复杂的类型。
为此,我尝试了几个不同的语法,所有这些语法要么将条目作为单独的变量类型处理,要么在文档中中断类型识别。
除此之外,我只会在参数注释中注意到这一点,但是在类型中显示参数的数组性似乎更清楚。
编辑
使用phpDocumentor 2(它与DocBlox合并)
@param CustomType[] $paramName语法是有效的,正如@Styx的答案中所指出的,PhpStorm支持使用该语法进行类型提示。
已接受的答复已适当更新。
发布于 2012-09-05 10:41:48
新版PHP支持/** @var sometype[] */语法。更复杂的是:/** @var (sometype|othertype)[] */。http://www.phpdoc.org/docs/latest/guides/types.html#arrays PHPStorm也支持这种语法。
发布于 2012-02-03 19:43:05
你能做的最好就是:
@param array $variablename an array of {@link CustomType} objects这将帮助读者了解$variablename的真实数据类型,同时表示对数组所包含内容的期望。
当涉及到使用来自$variablename的成员并期望CustomType的属性/方法出现时,这不足以帮助IDE的自动完成。目前还没有办法得到这种行为。
发布于 2018-11-29 11:44:20
注:这个答案是对其他答案的补充。
要记录对象数组,可以使用@param ClassName[] $classInstance Description。但是请注意,对于PHP 7,您可以使用参数类型声明(类型提示),在本例中,类型必须是array。
示例:

提示:您还应该使用declare(strict_types=1);
https://stackoverflow.com/questions/9132062
复制相似问题