返回数组并访问值

时间:2011-11-10 22:42:14

标签: php

我对PHP很新,我试图从类函数返回一个数组,然后像这样访问它的值:

  <?php 
    class Foo
        {
            private $access;

            public function setAccess($access)
            {
                $this->access = $access;
            }


            public function getAccess()
            {
                return $this->access;
            }
        }


$var = new Foo();
$var->setAccess(array(1,2,3,4));

$var2 = $var->getAccess()[2];

echo $var2;

?>

当我尝试使用此代码运行页面时,我得到以下内容:

Parse error: syntax error, unexpected '[' in arraytest.php on line 22

如何在班级中访问私有数组的值?

2 个答案:

答案 0 :(得分:2)

此:

$var2 = $var->getAccess()[2];
在版本5.4之前,

无法在PHP中完成(此功能称为阵列解除引用)。目前你必须做这样的事情:

$var2 = $var->getAccess();
$var2 = $var2[2];

答案 1 :(得分:1)

你不能直接调用数组值,你必须写下这个:

$access = $var->getAccess();
$var2 = $access[2];

或者,您可以向您的班级添加这样的功能。

public function getAccessValue($key) {
  return $this->access[$key];
}