从curl_exec获取响应代码,标头和内容

时间:2019-10-29 12:28:00

标签: php curl http-headers http-response-codes httpcontent

我似乎无法找出一种从curl_exec获取响应代码,标头和内容的方法。

这是我的最后尝试:

$url = '...';
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_CAINFO, 'PATH_TO_.cer');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
//curl_setopt($curl, CURLOPT_HEADER, true); //ATTEMPT1
/*curl_setopt($curl, CURLOPT_HEADERFUNCTION, function($curl, $header) use (&$headers){ //ATTEMPT2
    $len = strlen($header);
    $header = explode(':', $header, 2);
    if (count($header) < 2){ // ignore invalid headers
        return $len;
    }
    $headers[strtolower(trim($header[0]))][] = trim($header[1]);
    print_r($headers);
    return $len;
});*/
$contents = curl_exec($curl);
curl_close($curl);

我尝试过ATTEMPT1和ATTEMPT2

在请求的标题中,有很多字段,例如每次都需要检索的速率限制,但我还需要响应代码和请求的内容。

编辑:到目前为止,我发现我需要在ATTEMPT2上使用ATTEMPT1,因为最后一个只是手工制作的版本,我似乎无法理解这摆脱了响应代码在标题中。

1 个答案:

答案 0 :(得分:0)

您正在寻找curl_getinfo()

例如,获取响应代码:

$http_code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
相关问题