我发现此代码有效:
private function getSomething() {
return array('item' => 'one');
}
...
echo $this->getSomething()['item'];
输出:'one'
但我在手册中找不到这种写作形式。 Futhermore Netbeans告诉我它只适用于PHP 5.4及以上版本。也许我应该首先分配变量然后将其用作数组?
但是这段代码看起来好多了,而且它在一行......
最后我的问题是 - 我可以使用这个表格吗?
答案 0 :(得分:1)
在PHP 5.3之前,您需要使用临时变量。
function getArray() {
return array(1, 2, 3);
}
// on PHP 5.4
$secondElement = getArray()[1];
// previously
$tmp = getArray();
$secondElement = $tmp[1];
// or
list(, $secondElement) = getArray();
来源: http://php.net/manual/en/language.types.array.php#example-88
答案 1 :(得分:1)
这取决于你是否知道正在使用哪个版本的PHP。
如果必须在多个版本的PHP上运行
你应该先把它分配给变量
$tmp = $this->getSomething();
echo $tmp[0];