PHP arrayObject为什么我不能使用对象表示法访问数组键?

时间:2014-01-24 13:17:06

标签: php arrays arrayobject

我正在尝试通过对象表示法访问数组键。我认为下面的代码应该有效吗?

<?php

  $accountData = array('role'=> 'user');
  $accountDataAO = new ArrayObject($accountData, ArrayObject::STD_PROP_LIST);
  echo $accountDataAO->role;
?>

但我明白了:

PHP Notice:  Undefined property: ArrayObject::$role in /home/stan/Desktop/test.php on line 5
PHP Stack trace:
PHP   1. {main}() /home/stan/Desktop/test.php:0

我做错了什么?

1 个答案:

答案 0 :(得分:3)

稀释。 NVM。我不得不添加:ArrayObject :: ARRAY_AS_PROPS

<?php
  $accountData = array('role'=> 'user');
  $accountDataAO = new ArrayObject($accountData, ArrayObject::STD_PROP_LIST | ArrayObject::ARRAY_AS_PROPS); 
  echo $accountDataAO->role;
?>