如何使用PHP从JSON响应中获取特定数据

时间:2017-11-04 12:13:11

标签: php json

在我的一个应用程序中,我从REST API获取JSON格式响应数据。与以下内容类似:

{
   "Response": {
       "user_id": "12003",
       "username": "Shimul",
       "status": "active"
   },
   "ErrorMessage": "",
   "Status": 0
}

从这个回复中,我只需要获取user_id来处理我的应用程序中的进一步操作。但我无法确定如何使用PHP json_decode()

解码它

任何人都可以告诉我如何使用PHP对此进行解码并仅从此回复中获取user_id

由于

2 个答案:

答案 0 :(得分:1)

你不能向我们展示你到目前为止所尝试的内容以及它失败的原因,但它很简单:

<?php
$json = '{
   "Response": {
       "user_id": "12003",
       "username": "Shimul",
       "status": "active"
   },
   "ErrorMessage": "",
   "Status": 0
}';

var_dump(json_decode($json)->Response->user_id);

答案 1 :(得分:0)

json_decode取2个参数。

  1. (string)json
  2. (bool)assoc。如果为TRUE,则该函数将返回array else对象。
  3. 所以你只需要:

    <?php
    $json = '{
          "Response": {
          "user_id": "12003",
          "username": "Shimul",
          "status": "active"
        },
      "ErrorMessage": "",
      "Status": 0
      }';
    
    // By converting into array..
    
    $array = json_decode($json,TRUE);
    $user_id = $array['Response']['user_id'];
    
    //---------OR---------
    // Using Object
    
    $obj = json_decode($json);
    $user_id = $obj->Response->user_id; 
    ?>
    

    我希望这会有所帮助。