使用PHP进行卷曲响应回应/存储

时间:2016-05-25 21:04:27

标签: php json curl

我在脚本中使用以下curl代码

            $ch = curl_init(self::ONTRAPORT_API_ENDPOINT);
            curl_setopt($ch, CURLOPT_HTTPHEADER, self::$ONTRAPORT_AUTH_HEADERS);
            curl_setopt($ch, CURLOPT_POST, true);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

            $response = curl_exec($ch);
            $status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
            curl_close($ch);

        //echo $status_code;
            if ($status_code === 200 || $status_code === 201) {
$jsonen = json_decode($response, true);
                $accountId = $jsonen['id'];     // this is not working
            }

我想要做的是声明我在curl响应中获得的“id”。请查看上面代码中的评论。但我无法将id存储在变量$ accountId中。

我的卷曲反应是这样的

{
  "code": 0,
  "data": {
    "firstname": "test1",
    "lastname": "test2",
    "email": "test1@test.net",
    "id": "39948"
  },
  "updates": [],
  "notifications": [],
  "account_id": "26615"
}

所以我需要将“39948”存储在我的变量中。请指教。

2 个答案:

答案 0 :(得分:3)

JSON是数据层次结构。 “id”键位于“data”下方,因此您可以像这样访问它:

project.json frameworks

答案 1 :(得分:0)

$the_id =  $jsonen->data-id; //save the ID in a variable