PHP获取没有cURL的http头响应代码

时间:2012-03-15 17:23:03

标签: php curl http-headers

我编写了一个类来检测cURL是否可用,如果它是使用cURL执行GET,POST,DELETE。在cURL版本中,我使用curl_getinfo($curl, CURLINFO_HTTP_CODE);来获取HTTP代码。如果cURL不可用,则使用fopen()来读取文件内容。如何在没有cURL的情况下获取HTTP头代码?

2 个答案:

答案 0 :(得分:15)

使用get_headers

<?php
$url = "http://www.example.com/";

$headers = get_headers($url);

$code = $headers[0];
?>

修改 get_headers需要额外调用,并不适合此方案。将$http_response_headers用作suggested by hakre

答案 1 :(得分:8)

每当您进行一些HTTP交互时,同一范围内的特殊变量$http_response_header将包含由上次HTTP交互产生的所有标头(包括状态行标头)。

请参阅here for an example how to parse it and obtain the status code