5.4取消引用有效的5.3数组调用

时间:2013-02-05 16:01:18

标签: php arrays

我在使用解除引用的这行代码上遇到错误:

   $data['data'] = $results->result()[0];

(我开始用PHP 5.4学习PHP。)如何以5.3方式取消引用?

我查看了文档:

function getArray() {
    return array(1, 2, 3);
}

// on PHP 5.4
$secondElement = getArray()[1];

// before PHP 5.4
$tmp = getArray();
$secondElement = $tmp[1];

// or
list(, $secondElement) = getArray();

但创建方法调用似乎很麻烦

2 个答案:

答案 0 :(得分:1)

$res = $results->result();
$data['data'] = $res[0];

或者您可以使用重新分配(以避免需要临时变量):

$data['data'] = $results->result();
$data['data'] = $data['data'][0];

答案 1 :(得分:1)

list()就是你想要的。假设右边的值可以通过整数键访问,它已经永远存在并且效果很好。

<?php
list(, $one, , $three) = range(0, 4);

请注意,list()不会迭代键(如前所述),而是直接按插槽位置(0,1,...)访问整数键。如果这些键不存在,您将收到NOTICE并将您的值设置为null。