首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP中的数组引用行为

问PHP中的数组引用行为
EN

Stack Overflow用户
提问于 2011-03-24 18:39:45
回答 3查看 92关注 0票数 2

不管怎样,我都听不懂这种被上帝抛弃的语言。这一点:

代码语言:javascript
复制
$x = explode(' ', 'a b c');
echo $x[0];

工作得很好。但是:

代码语言:javascript
复制
echo explode(' ', 'a b c')[0];

返回错误。怎么回事?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-03-24 18:43:47

PHP解析器还不支持这种语法。它被称为数组取消引用,并且已经被添加到PHP主干中。

票数 2
EN

Stack Overflow用户

发布于 2011-03-24 18:42:36

这只是一个语法错误,你只能在PHP中的变量上使用数组括号[]。

示例:

代码语言:javascript
复制
echo $x[0];
票数 4
EN

Stack Overflow用户

发布于 2013-07-10 14:29:08

你可以在PHP5.4中做到这一点...是时候升级了。

每个the manual

从PHP5.4开始,可以直接对函数或方法调用的结果进行数组解引用。在此之前,只能使用临时变量。

从PHP5.5开始,可以对数组文字进行数组解引用。

代码语言:javascript
复制
<?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();
?>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5417869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档