Home >Backend Development >PHP Tutorial >PHP get_headers method to detect whether remote files exist
Instructions: The function of get_headers function: when accessing a remote address, return the HTTP headers sent by the server in the form of an array. And $header[0] is the status code returned by the server (the status code is usually the first one returned). Therefore, to determine that a file exists on the remote server, you only need to make sure that the status code returned by accessing the file is "HTTP/1.1 200 OK". It can also be determined that the status code is not "HTTP/1.1 404 Not Found", and the answer to the existence of the file can also be given. I will share two more examples of get_headers function below for your reference. 1. Example of obtaining three-digit HTTP response code:
2, example of excluding redirection:
Attach, php get_headers () get_headers (PHP 5) get_headers — Get all headers sent by the server in response to an HTTP request Instructions array get_headers ( string $url [, int $format ] ) get_headers() returns an array containing the headers sent by the server in response to an HTTP request. If it fails, it returns FALSE and issues an E_WARNING level error message. If the optional format parameter is set to 1, get_headers() will parse the corresponding information and set the key name of the array. Instructions: Since PHP 5.1.3 this function uses the default stream context, which can be set and modified using the stream_context_get_default() function. Example of get_headers():
The output is similar to: Array ( [0] => HTTP/1.1 200 OK [1] => Date: Sat, 29 May 2004 12:28:13 GMT [2] => Server: Apache/1.3.27 (Unix) (Red-Hat/Linux) [3] => Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT [4] => ETag: "3f80f-1b6-3e1cb03b" [5] => Accept-Ranges: bytes [6] => Content-Length: 438 [7] => Connection: close [8] => Content-Type: text/html ) Array ( [0] => HTTP/1.1 200 OK [Date] => Sat, 29 May 2004 12:28:14 GMT [Server] => Apache/1.3.27 (Unix) (Red-Hat/Linux) [Last-Modified] => Wed, 08 Jan 2003 23:11:55 GMT [ETag] => "3f80f-1b6-3e1cb03b" [Accept-Ranges] => bytes [Content-Length] => 438 [Connection] => close [Content-Type] => text/html ) |