在一个完整的 HTTP 请求中,会包含两个 headers 信息,一个是请求头,另一个是返回头,如下截图:
http-header
那我们在PHP中如何使用 curl 获取这两个头信息呢?
获取Request Headers
// curl句柄需要设置这个参数
CURLINFO_HEADER_OUT => 1,
// curl_getinfo获取请求
request headerscurl_getinfo($ch, CURLINFO_HEADER_OUT);
打印结果如下:
获取Response Header
// 这个参数用来设置
Response HeaderCURLOPT_HEADER => 1,
curl_exec($ch);
打印结果如下:
可以看到, header 和返回的结果是在一起,这时候需要设置另一个参数不返回 body 数据:
CURLOPT_HEADER => 1,// 不要body了
CURLOPT_NOBODY => 1,
现在,返回的结果就只有 header 了,同时我们也发现,请求方法也变成了 head 请求。
以上就是本文所要讲得如何在PHP中使用curl获取头信息,如果是请求头,就设置 CURLINFO_HEADER_OUT ,如果是响应头,就设置 CURLOPT_HEADER 。