9

以下哪项是为 phpDocumentor 记录此方法的返回类型的正确方法?

方法一:

/**
 * @return array Foo array.
 */
public function foo() {
    return array(1, 2, 3);
}

方法二:

/**
 * @return integer[] Foo array.
 */
public function foo() {
    return array(1, 2, 3);
}

此外,这两种方法是否对 IDE 有任何影响?

编辑:

PhpStorm 和 Netbeans 7.1+ IDE 似乎都支持第二种方法。

4

2 回答 2

17

这两种方法在技术上都是正确的,但这种方法被认为是“更好的”,因为它更具体(int并且integer可以互换):

@return int[]

记录在这里:

http://www.phpdoc.org/docs/latest/guides/types.html

于 2012-08-09T16:44:43.223 回答
7

在编写此答案时,这些是phpDocumentor(可能还有其他PHPDoc实现)表示数组的公认方式:

  1. unspecified,没有给出表示数组内容的定义。例子:@return array

  2. 指定包含单个类型Type定义通知读者每个数组元素的类型。然后,只Type期望一个作为给定数组的元素。示例:@return int[]

    请注意,mixed它也是单一类型,使用此关键字可以指示每个数组元素包含任何可能的类型。

  3. 指定包含多种类型Type定义通知读者每个数组元素的类型。每个元素可以是任何给定类型。例子:@return (int|string)[]
于 2014-08-15T14:52:19.760 回答