首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用PHP解析JSON文件?

如何使用PHP解析JSON文件?
EN

Stack Overflow用户
提问于 2018-08-13 03:34:14
回答 2查看 0关注 0票数 0

我试图使用PHP解析一个JSON文件,但无法实现。

这是我的JSON文件的内容:

代码语言:txt
复制
{
    "John": {
        "status":"Wait"
    },
    "Jennifer": {
        "status":"Active"
    },
    "James": {
        "status":"Active",
        "age":56,
        "count":10,
        "progress":0.0029857,
        "bad":0
    }
}

我已经尝试过这样的方法:

代码语言:txt
复制
<?php

$string = file_get_contents("/home/michael/test.json");
$json_a = json_decode($string, true);

echo $json_a['John'][status];
echo $json_a['Jennifer'][status];

但因为我不知道名字(如'John''Jennifer')和所有可用的键和值(如'age''count')。在此之前,我认为我需要创建一个Foreach循环。

EN

回答 2

Stack Overflow用户

发布于 2018-08-13 12:27:12

如果$json_a单独使用迭代,则会有一个对象的对象。即使true作为第二个参数传入,也有一个二维数组。如果你在第一个维度上循环,你就不能像这样回应第二个维度。所以这是错的:

代码语言:txt
复制
foreach ($json_a as $k => $v) {
   echo $k, ' : ', $v;
}

若要回显每个人的状态,请尝试如下:

代码语言:txt
复制
<?php

$string = file_get_contents("/home/michael/test.json");
$json_a = json_decode($string, true);

foreach ($json_a as $person_name => $person_a) {
    echo $person_a['status'];
}

?>
票数 0
EN

Stack Overflow用户

发布于 2018-08-13 12:41:22

试一试

代码语言:txt
复制
<?php
$string = file_get_contents("/home/michael/test.json");
$json_a=json_decode($string,true);

foreach ($json_a as $key => $value){
  echo  $key . ':' . $value;
}
?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100002093

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档