无法打印通过解析JSON获得的数据

时间:2018-10-07 16:21:09

标签: php json decode

我创建了以下JSON数据:

UnrecognizedURLError: /ember

我的PHP页面中的代码是:

{
  "status" : "fail",
  "data" : {
    "error_message" : "Label already exists on your account for Network."
  }
}

运行时得到的结果是:

  

失败

如何在页面中显示$newaddr = json_decode($json, true); echo $newaddr->status; echo $newaddr->data; 的值?因为:

error_message
当我使用$newaddr->data 打印时,

具有值null

1 个答案:

答案 0 :(得分:2)

当您使用json_decode(..., true);时,第二个参数表示您希望将json解析为关联数组。但是,您正在尝试通过对象属性获取数据。

解决方案是:

  1. 将第二个参数更改为false

    $newaddr = json_decode($json, false);
    echo $newaddr->status;
    echo $newaddr->data->error_message;
    
  2. 以数组方式获取数据

    $newaddr = json_decode($json, true);
    echo $newaddr['status'];
    echo $newaddr['data']['error_message'];
    

json_decode documentation