使用PHP curl函数时,无论如何都能看到原始标题卷曲发送到服务器?
答案 0 :(得分:40)
您可以使用curl_getinfo:
致电之前
curl_setopt($ch, CURLINFO_HEADER_OUT, true);
在
$headers = curl_getinfo($ch, CURLINFO_HEADER_OUT);
答案 1 :(得分:8)
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLINFO_HEADER_OUT, true);
curl_exec($ch);
var_dump(curl_getinfo($ch,CURLINFO_HEADER_OUT));
?>
仅适用于php 5.1.3 http://php.net/manual/en/function.curl-getinfo.php
您可以使用控制台并点击
来验证它们是否相同curl http://example.com/ -I
或
curl --trace-ascii /file.txt http://example.com/
答案 2 :(得分:4)
AFAIK,PHP / CURL绑定仍缺乏对CURLOPT_DEBUGFUNCTION的适当支持,后者是来自libcurl的回调,可以提供所有这些细节。
这是我推荐人们使用curl命令行工具及其--trace-ascii选项FIRST编写HTTP脚本内容的主要原因,然后将其转换为PHP函数。
答案 3 :(得分:2)
确保在进行curl_getinfo调用之前设置CURLINFO_HEADER_OUT选项
curl_setopt($ c,CURLINFO_HEADER_OUT,true);