在下面的代码中,我想使用get_data
显示echo
但不能解码/显示分支数组。所以,我的问题是如何将分支数组转换为PHP对象。
Json回复:
{"status":1,"msg":"fetched Succesfully","user_data":{"d91c2d21af80002a3dd6ffc76f62bb9f89b6e0ba":{"name":"PRATYUSH","user_year":"2013","get_data":"d91c2d21af80002a3dd6ffc76f62bb9f89b6e0ba","is_active":1,"data_no":"ghjgjj2XXXXXXoioo7","user_bin":"77","is_exp":"N"}}}
PHP代码:(使用curl后)
$response = json_decode($o,true);
$status=$response["status"];
$msg=$response["msg"];
$user_data=$response["user_data"][0]["get_data"];
结果:
echo $status;//(working)
echo "<br>";
echo $msg;//(working)
echo "<br>";
echo $user_data;//(Not working)
echo User_data
无效。
答案 0 :(得分:1)
所以你想获得get_data
的价值。如果d91c2d21af80002a3dd6ffc76f62bb9f89b6e0ba
未知,请尝试这种方式。
$user_data_arr=$response["user_data"];
foreach($user_data_arr AS $user_data_obj)
{
echo $user_data_obj['get_data'];// here is your desired value
}
使用foreach
循环,您不必查找索引,您可以轻松获取值。
完整代码
$response = json_decode($o,true);
$status=$response["status"];
$msg=$response["msg"];
$user_data="";
$user_data_arr=$response["user_data"];
foreach($user_data_arr AS $user_data_obj)
{
$user_data = $user_data_obj['get_data'];// here is your desired value
}
echo $status;
echo "<br>";
echo $msg;
echo "<br>";
echo $user_data;//will work
答案 1 :(得分:0)
更改
$user_data=$response["user_data"][0]["get_data"];
到这个
$user_data=$response["user_data"]["d91c2d21af80002a3dd6ffc76f62bb9f89b6e0ba"]["get_data"];