PHP 5.4 –函数数组解引用

PHP现在支持直接从函数调用进行数组取消引用。
在5.4版之前,您必须将函数的返回值存储到变量中,然后使用该变量。
最常见的用法是使用“ preg_match”或“ explode”类型的函数(返回数组的函数)。因此,而不是以下内容:

$data  = "piece1 piece2 piece3 piece4";
$pieces = explode(" ", $data);
echo $pieces[0]; // 件1
echo $pieces[1]; // 件2

我们可以将其缩短为:

$data  = "piece1 piece2 piece3 piece4";
echo explode(" ", $data)[0];

使用' getdate()'函数的另一个示例。

#不对函数数组进行解引用

date_default_timezone_set('Asia/Kolkata');

$temp = getdate();

echo $temp['year'];
echo $temp['mon'];

#使用函数数组解引用

date_default_timezone_set('Asia/Kolkata');

echo getdate()['mon'];
You can use the above in a conditional as shown below:
date_default_timezone_set('Asia/Kolkata');

if(getdate()['mon'] == 4) {
    echo "Month of April";
}

使用自定义函数的另一个示例。

function getColors ()
{
  return [
          'red' => '#FF0000',
          'green' => '#00FF00',
          'blue' => '#0000FF'
         ];
}

echo getColors()['green']; // 返回#00FF00