2010-11-17 52 views
2

我目前正在使用PHP CLI连接到远程主机并发送一些标题。我的脚本然后等待响应。我可以将它全部打印出来,但它会返回HTML。我只想要标题。我怎样才能做到这一点?如何获取响应标题?

回答

1

接收HTTP响应的格式与发送请求的格式基本相同:标头和正文由两个CRLF(\r\n\r\n)分隔。

$parts = explode("\r\n\r\n", $http_response); 
$headers = array_shift($parts); 
$body = implode("\r\n\r\n", $parts); 
3

也许你可以使用get_headers

+0

或者手动执行HEAD请求如果上述不是选项 – Gordon 2010-11-17 15:14:52

+0

您是不是指浏览响应文本以提取标题?因为“[他]只想要标题”我认为这个功能是最好的方法?或者我都不明白? ^^ – MatTheCat 2010-11-17 15:27:07

+0

OP没有指定他/她如何连接到远程服务器。我同意'get_headers'是最简单的方法。它执行HEAD请求并返回数组中的标题。这很容易,但如果由于某种原因,OP不能使用这种方法,那么手动执行HEAD请求(例如使用cURL或HTTP扩展)而不是执行完整的GET是更智能的方法,因为它不会返回任何响应主体。 – Gordon 2010-11-17 15:32:57