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