使用PHP函数获取HTTP响应码的方法
在Web开发中,获取HTTP响应码是一项非常常见的操作。HTTP响应码是Web服务器返回给客户端请求的结果状态码,通常是3位数字,例如200、400、404等等。在PHP中,获取HTTP响应码的方法有多种,本文将介绍其中的三种常用方法。
### 方法一:$_SERVER['HTTP_STATUS_CODE']
这是一种较为简单和直接的方法,我们可以通过访问$_SERVER['HTTP_STATUS_CODE']来获取当前HTTP响应码。以下是具体的代码实现:
echo $_SERVER['HTTP_STATUS_CODE'];
需要注意的是,该方法只适用于PHP5.4或以上版本。
### 方法二:http_response_code()
这是PHP自带的一个函数,用于获取或设置HTTP响应码。如果该函数没有传递参数,则返回当前的HTTP响应码。如果该函数传递了一个参数,则设置当前的HTTP响应码。例如:
http_response_code(404); // 设置HTTP响应码为404 echo http_response_code(); // 输出当前的HTTP响应码,应该是404
不过需要注意,该函数只适用于PHP5.4或以上版本。
### 方法三:get_headers()
以上两种方法都只适用于PHP5.4或以上版本,对于较老的PHP版本,我们可以使用get_headers()函数来获取HTTP响应码。get_headers()函数需要传递一个URL参数,返回一个数组,其中包含了服务器的响应头信息。我们可以通过解析该数组来获取HTTP响应码。以下是具体的代码实现:
$headers = get_headers("https://cn.bing.com/search?q=php+get+http+response+code"); // 访问一个网址,获取响应头信息
echo substr($headers[0], 9, 3); // 输出HTTP响应码
需要注意的是,get_headers()函数在默认情况下会发送一个完整的HTTP请求,因此可能会引起一定的网络开销,同时也需要保证PHP服务器可以访问被请求的URL。
综上所述,以上三种方法可以有效地获取HTTP响应码,不过需要注意在使用过程中需要根据实际情况选择正确的方法。对于PHP5.4及以上版本,建议使用http_response_code()函数或$_SERVER['HTTP_STATUS_CODE']来获取HTTP响应码。对于较老的PHP版本,则可考虑使用get_headers()函数。
