Home  >  Article  >  Backend Development  >  How to get http status code in PHP

How to get http status code in PHP

zbt
zbtOriginal
2023-10-07 14:53:092244browse

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.

How to get http status code in PHP

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!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn