如何解码响应的 JSON 格式超过了 JSON 字符串

我发送一个 cURL 请求到一个 API,返回这个响应:

string(826) "HTTP/1.1 200
Server: openresty/1.13.6.2
Date: Sat, 20 Oct 2018 18:21:54 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 562
Connection: keep-alive
Expires: Sat, 20 Oct 2018 21:20:26 UTC
Cache-Control: max-age=10800
X-Cache-Status: HIT

{
    "SearchResponse": {
        "Matches": {
            "SearchMatch": [
                {
                    "Id": "43000173601",
                    "Lat": 52.4770035488100035,
                    "Lon": -1.71806745583999998,
                    "Name": "Yorkminster Drive",
                    "Modes": {
                        "Mode": "BUS_OR_COACH"
                    },
                    "TopMostParentId": "430G01736"
                },
                {
                    "Id": "43000173602",
                    "Lat": 52.4776389831399968,
                    "Lon": -1.71687080637,
                    "Name": "Yorkminster Drive",
                    "Modes": {
                        "Mode": "BUS_OR_COACH"
                    },
                    "TopMostParentId": "430G01736"
                }
            ]
        },
        "Query": "yorkminster",
        "Total": 2
    }
}

我想要使用 json_decode() 解码 JSON 响应,但是不知道如何获取 JSON 部分并忽略烦人的顶部部分。我尝试使用 explode(),但是把它分成了比我头脑能承受的更多的部分,任何想法都会很有帮助。

这是我的 cURL 请求:

curl_init('api url');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: application/json'));
$response = curl_exec($ch);
curl_close($ch);
点赞