サブノート

技術的なトピックが中心の備忘録

[PHP]配列取得後のインデックス指定でエラー

PHP 5.1.6 の場合、配列取得後に続けてインデックス指定をするとエラーになる。

<?php

echo getVal()[0];  //←エラー発生

function getVal()
{
  $ret = array();
  $ret[0] = 'zero';
  return $ret;
}

?>
Parse error: syntax error, unexpected '[', expecting ',' or ';' in /var/www/html/〜〜〜


この場合、一度変数に格納してからアクセスする必要がある。

<?php

$ar = getVal();
echo $ar[0];  //←これはOK

function getVal()
{
  $ret = array();
  $ret[0] = 'zero';
  return $ret;
}
                                
?>

なお、PHP 5.3.28 では前者の方法もOK。