在PHP中解码JSON可以';t访问密钥
我有一个JSON结果:在PHP中解码JSON可以';t访问密钥,php,decode,json,Php,Decode,Json,我有一个JSON结果: [ { "_id" : { "$oid" : "5237d438e4b07666dcca4896"} , "username" : "user" , "password" : "asdf"} ] 从GET请求返回的。我正在尝试解码此结果,我似乎无法访问用户名或密码密钥。这就是我所尝试的: $obj = json_decode($result[0]); echo $obj->username; 但是,它似乎每次都返回整个结果(数组) 尝试使用以下方法:
[ { "_id" : { "$oid" : "5237d438e4b07666dcca4896"} ,
"username" : "user" , "password" : "asdf"} ]
从GET请求返回的。我正在尝试解码此结果,我似乎无法访问用户名或密码密钥。这就是我所尝试的:
$obj = json_decode($result[0]);
echo $obj->username;
但是,它似乎每次都返回整个结果(数组) 尝试使用以下方法:
$json = json_decode($result);
echo $json[0]->username;
完整示例:
<?php
header('Content-Type: text/plain; charset=utf-8');
$result = '[ { "_id" : { "$oid" : "5237d438e4b07666dcca4896"} ,
"username" : "user" , "password" : "asdf"} ]';
$json = json_decode($result);
echo $json[0]->username;
?>
尝试使用以下方法:
$json = json_decode($result);
echo $json[0]->username;
完整示例:
<?php
header('Content-Type: text/plain; charset=utf-8');
$result = '[ { "_id" : { "$oid" : "5237d438e4b07666dcca4896"} ,
"username" : "user" , "password" : "asdf"} ]';
$json = json_decode($result);
echo $json[0]->username;
?>
是的,您是对的,json_decode函数返回一个数组。您需要从该数组中获取值。在上述情况下,您需要获取用户名,如下所示:
echo $json_encode[0]->username;;
取决于您的json
是的,您是对的,json\u解码函数返回一个数组。您需要从该数组中获取值。在上述情况下,您需要获取用户名,如下所示:
echo $json_encode[0]->username;;
取决于您的json
如果向json\u decode添加第二个参数boolan true 像 然后您将获得关联数组而不是对象 并且可以通过如下键访问值
echo $obj['username'];
如果将第二个参数boolan true添加到json_decode 像 然后您将获得关联数组而不是对象 并且可以通过如下键访问值
echo $obj['username'];
无论我是否使用
0
索引,结果都是一样的。无论我是否使用0
索引,结果都是一样的。你不能访问具有0
索引的对象。@Bora globally$obj是一个包含objects@Bora修正为更容易理解。我错过了[]
括号(抱歉;)您无法访问索引为0
的对象。@Bora全局$obj是一个包含objects@Bora修正为更容易理解。我错过了[]
括号(抱歉;)它返回一个数组,但用户名不是数组键它返回一个数组,但用户名不是数组键他想用用户名和密码等键直接访问值。从他的尝试中我可以看出,他想作为对象访问它们,不是数组我只是给出了一个用键直接访问值的解决方案。他想用它们的键直接访问值,比如用户名和密码。从他的尝试中我可以看出,他想把它们作为对象来访问,而不是数组我只是给出了一个用键直接访问值的解决方案。