2014-01-24 31 views
0

我想通過對象表示法訪問數組鍵。我認爲下面的代碼應該工作?PHP 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 

我在做什麼錯?

+0

從php.net'這個類允許對象作爲數組工作.' ==>不是數組作爲對象。無論如何,請查看手冊http://www.php.net/manual/en/class.arrayobject.php – AmazingDreams

+0

ohh nvm。我想到了。必須添加:ArrayObject :: ARRAY_AS_PROPS – Dannyboy

+0

@Dannyboy更新您的原始問題,然後在其他人搜索相同的東西的情況下。 – Styphon

回答

3

ahh。 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; 
?> 
相關問題