PHPDoc-指定数组键的类型

Mik*_*ikO 5 php arrays phpdoc

如何在返回数组的PHP方法的文档中指定键的类型?


例如,我将其用于对象数组@return MyClass[]

但是我想评论一个数组array( 'string' => array( MyClass ) ),这可能吗?

Emm*_*ton 24

在问题提出多年后,可以使用例如由@return array<integer, string>整数键索引的字符串值数组来记录数组键和值。

我不知道这种语法在多大程度上是标准的并且得到了很好的支持。PHPCSPsalm等工具确实支持它。


小智 -16

为什么需要指定数据类型。您可以通过使用 foreach 循环遍历结果来访问数组中的值。

例如:

$arr = array("name" => "MikO", "street" => "straatnaam", "number" => "2");


//Here is key the first key, in this case: name, street, number
//And value are the values of the keys, in this case: MikO, straatnaam, 2

foreach($arr as $key => $value)
{
echo $key." ".$value."<br/>";
}
Run Code Online (Sandbox Code Playgroud)

您还可以使用以下方法从中提取一些特定数据:

echo $arr['name'];
Run Code Online (Sandbox Code Playgroud)

如果你想进入对象:

foreach($arr as $objname => $objcontent)
{
 foreach($objcontent as $objnodename => $objnodevalue)
{
echo $objnodename." = ".$objnodevalue;
}

}
Run Code Online (Sandbox Code Playgroud)

  • 谢谢伙计,但幸运的是我已经知道如何循环遍历数组:)我想要的是为这种数组添加适当的文档,以便在我的IDE中获得代码提示,这与你的答案无关...... (12认同)
  • 这对于(某些)人类来说可能已经足够好了,但对于 PHPStorm 来说就不行了,它无法仅理解文本注释并为我提供代码补全...... (4认同)