Home > Article > Backend Development > How to get http status code in PHP
PHP can get the http status code by using the curl extension and using the file_get_contents function. Detailed introduction: 1. Use the curl extension to initialize the curl session, set curl options, execute the curl session, obtain the HTTP status code, and close the curl session; 2. Use the file_get_contents function to send an HTTP request and obtain the HTTP status code.
The operating system of this tutorial: Windows 10 system, PHP version 8.2.0, DELL G3 computer.
PHP is a widely used server-side scripting language for developing dynamic web pages and applications. During the development process, we often need to communicate with other servers and obtain the status code of HTTP requests. HTTP status code is an identifier of the server's response to the client's request. It tells the client the processing result of the request. This article will introduce how to get HTTP status code using PHP.
In PHP, we can use the curl extension or the built-in file_get_contents function to send an HTTP request and get the response. These two methods are introduced below.
1. Use curl extension
curl is a powerful open source library used to communicate with various servers. In PHP, we can use curl extension to send HTTP requests and get responses. First, make sure your PHP environment has the curl extension installed.
The steps to use curl extension to get HTTP status code are as follows:
Step 1: Initialize curl session
$ch = curl_init();
Step 2: Set curl options
curl_setopt($ch, CURLOPT_URL, "http://example.com"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, true);
In Here we set the URL to request, save the returned response into a variable, and the options to include the response headers.
Step 3: Execute curl session
$response = curl_exec($ch);
Step 4: Get HTTP status code
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
Using the curl_getinfo function, we can get the HTTP status code.
Step 5: Close curl session
curl_close($ch);
The complete code is as follows:
$ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://example.com"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, true); $response = curl_exec($ch); $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch);
2. Use the file_get_contents function
file_get_contents function It is a function built into PHP for reading the contents of files or URLs. We can use it to send HTTP requests and get responses.
The steps to use the file_get_contents function to obtain the HTTP status code are as follows:
Step 1: Send an HTTP request
$response = file_get_contents("http://example.com");
Step 2: Get the HTTP status code
$httpCode = substr($http_response_header[0], 9, 3);
The file_get_contents function will save the response header in the global variable $http_response_header. We can get the HTTP status code by parsing the first line.
The complete code is as follows:
$response = file_get_contents("http://example.com"); $httpCode = substr($http_response_header[0], 9, 3);
Summary:
This article introduces two methods of using PHP to obtain HTTP status codes: using curl expansion and Use the file_get_contents function. No matter which method is used, we can easily send an HTTP request and get the status code of the response. This is useful for developing web applications and communicating with other servers .
The above is the detailed content of How to get http status code in PHP. For more information, please follow other related articles on the PHP Chinese website!