PHP中有没有办法直接将函数的返回值解释为数组?
让我说我有一个功能:
function getArray() {
return array("foo", "bar");
}
而不是写作:
$array = getArray();
$var = $array[1];
我想直接访问“bar”:
$var = getArray()[1]; //this causes an error
答案 0 :(得分:11)
你想要的是数组解除引用,并且只有PHP 5.4(即将发布的PHP版本)才支持。
现在您可以使用list
语言构造:
list(, $var) = getArray();
如果您需要将值传递给其他函数,您仍然可以解决限制(这仅供参考,而不是您应该使用的):
func(${'_'.!$_=getArray()}[1]); // using the $_ var
func(${!${''}=getArray()}[1]); // using the $ var