引用返回的数组值的好习惯

时间:2014-10-08 13:42:09

标签: php arrays function

这是我以前没有见过的东西,但它似乎得到了支持,它确实有效,在调用提供函数后直接引用返回的数组键。但是......这是一个好习惯吗?这将在未来得到支持吗?这甚至有名字吗?

<?php

function example_function() {
    $return = array('part_1', 'part_2');
    return $return;
}

$var = example_function()[0];

echo $var;

为了获得相同的结果,我通常会执行以下操作

$var = example_function();
$var = $var[0];

2 个答案:

答案 0 :(得分:3)

它被称为Array Dereferencing。它一直是available since PHP 5.4。虽然有人可能会说它会降低可读性,但可以使用它。

答案 1 :(得分:0)

只有在您确定始终可以使用数组时才使用它。有时候我在一些scraper类中有以下代码:

$ip = $this->getIP()[0];

我没有检查此函数是否可以返回字符串,并且它导致了一些逻辑错误。现在,每当我想要获得数组的项目时,

$ip = $this->getIP()

if(is_array($ip)) {
    $ip = $ip[0];
} else {
    throw new Exception('Expects array here')
}
相关问题