记录一个变量,该变量可以接受一个接收值为字符串的向量的数组:
/*
* @var string[] An array of string objects.
*/
$foo = array('A', 'B', 'C');
记录一个变量,该变量可以接收一个接收值为整数的向量的数组:
/*
* @var int[] An array of string objects.
*/
$foo = array(1, 5, 0);
我应该如何记录其值为混合数组的变量?
我需要记录一个这样的数组:
$foo = array(
array('value A', 1, $this),
array('value b', 2, NULL),
array('value X', 15, new Test)
);
我想它是这样的:
/*
* @var array[][string|int|object|null] Description.
*/
答案 0 :(得分:4)
根据PHPDoc的current draft(图PSR-5申请人),@ var标记为deprecated。他们建议改为使用@type tag。
变量的类型仍然是一个数组;该数组的内容将在描述中简要提及。
/**
* @var array $foo An array of string elements.
*/
或
/**
* @type array $foo An array of string elements.
*/
如果变量可能包含字符串以外的内容,我可能会说An array of mixed elements.
,或者我具体知道它们可能是什么An array of bool|string|object elements.
如果变量本身可能是各种类型,我会给出它可能的类型列表。
/**
* @type bool|string|array $foo Mixed type, depending on result of baz().
*/