对于我的生活,我无法理解这种被遗弃的语言。这样:
$x = explode(' ', 'a b c');
echo $x[0];
工作得很好。但是:
echo explode(' ', 'a b c')[0];
返回错误。是什么给了什么?
答案 0 :(得分:4)
只是语法错误,您只能对PHP中的变量使用数组括号[]
。
示例:
echo $x[0];
答案 1 :(得分:2)
PHP解析器不支持该语法。它被称为数组解除引用,已经添加到PHP主干中。
答案 2 :(得分:1)
你可以在PHP 5.4中做到这一点 ...是时候升级了。
从PHP 5.4开始,可以对a的结果进行数组解除引用 函数或方法直接调用。之前它只能使用一个 临时变量。
从PHP 5.5开始,可以对数组取消引用数组文字。
<?php
function getArray() {
return array(1, 2, 3);
}
// on PHP 5.4
$secondElement = getArray()[1];
// previously
$tmp = getArray();
$secondElement = $tmp[1];
// or
list(, $secondElement) = getArray();
?>