如何在不知道键值的情况下在php中读取JSON数据

Abh*_*yap 4 php json firebase

我需要在php中读取firebase JSON URL然后显示它.我的firebase得到了以下.json数据:

{"dDsdE4AlB7P5YYd4fWbYTQKCLPh1":{"email":"abhi@gmail.com","name":"abhishek"},
 "z1ceiLhdh9YVu7lGnVvqDWoWHFH3":{"email":"ravi@gmail.com","name":"ravish"},
 "ghg76JHG8jhkj7GHGJ763kjhFF45":{"email":"John@gmail.com","name":"John"}}
Run Code Online (Sandbox Code Playgroud)

我可以使用键值访问"name"字段,如下所示: -

$url = 'https://xxxx.firebaseio.com/users.json'; // path to JSON file
$data = file_get_contents($url); // put the contents of the file into a variable
$characters = json_decode($data); // decode the JSON feed

echo $characters->dDsdE4AlB7P5YYd4fWbYTQKCLPh1->name;
Run Code Online (Sandbox Code Playgroud)

现在,如何在不知道键值的情况下访问"名称"字段?因为这些密钥是由firebase自动生成的,可以是任何值.

提前谢谢了!

ssh*_*pov 6

从你的json创建一个关联数组.然后,您可以使用带有键和值的foreach遍历它.这样,您将获得键值以及键的关联数据.

$characters = json_decode($data, 1);

foreach ($characters as $key => $value) {
    echo $key . ' ' . $echo $value['name'];
}
Run Code Online (Sandbox Code Playgroud)