PHP,curl和原始标头

时间:2009-12-01 21:06:49

标签: php curl

使用PHP curl函数时,无论如何都能看到原始标题卷曲发送到服务器?

4 个答案:

答案 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);