2014-08-31 107 views
0

我试图从下面的输出中获取用户名和ID的值。无法解析json属性

{ 
    "listusersresponse": { 
    "count": 1, 
    "user": [ 
     { 
     "id": "f01e8ea4-2da5-11e4-a846-726c7bbb864f", 
     "username": "admin", 
     "firstname": "admin", 
     "lastname": "test", 
     "created": "2014-08-26T20:52:24-0400", 
     "state": "enabled", 
     "account": "admin", 
     "accounttype": 1, 
     "domainid": "c091153a-2da5-11e4-a846-726c7bbb864f", 
     "accountid": "f01e7c02-2da5-11e4-a846-726c7bbb864f", 
     "iscallerchilddomain": false, 
     "isdefault": true 
     } 
    ] 
    } 
} 

这是我曾尝试

$url = file_get_contents("http://URL/client/&response=json"); 

$data = json_decode($url); 

var_dump($data); 

foreach ($data as $value) { 
    echo $value->count; 
    } 

对于这个工作,我得到1

但是尝试访问 “用户名”

foreach ($data as $value) { 
    echo $value->user->username; 
    } 

我得到以下时错误:注意:试图在“文件名”中获取非对象的属性

回答

2

用户是一个数组。

foreach ($data as $value) { 
    echo $value->user[0]->username; 
} 

不知道你的JSON的外观与几个用户,它必须是这样的话,我想:

foreach ($data as $value) { 
    foreach ($value->user as $user) { 
     echo $user->username; 
    } 
} 
+1

完美,谢谢! – Deano 2014-08-31 12:12:36

相关问题