Open In App

PHP get_headers() Function

Last Updated : 18 Sep, 2024
Comments
Improve
Suggest changes
Like Article
Like
Report

The get_headers() function in PHP retrieves all headers sent by a server in response to an HTTP request. It returns the headers as an indexed array, providing details like status codes, content type, and server information for the requested URL.

Syntax:

get_headers( $url, $format, $context )

Parameters:

This function accepts three parameters as mentioned above and described below:

  • $url: It is a mandatory parameter of the type string. It defines the target URL.
  • $format: It is an optional parameter of type int. If its value is set to non-zero it will return an associative array otherwise indexed array.
  • $context: It holds the valid resource context created by stream_context_create() function.

Example 1: In this example the get_headers() function to retrieve and display the HTTP headers from the target URL (“https://www.geeksforgeeks.org”) and prints the headers as an array.

php
<?php

// Target URL
$url = "https://www.geeksforgeeks.org";

// Fetching headers
$headers = get_headers($url);

// Printing headers
print_r($headers);
?>

Output:

Array (
[0] => HTTP/1.1 200 OK
[1] => Content-Type: text/html; charset=UTF-8
[2] => Connection: close
[3] => Date: Sun, 19 May 2019 08:31:29 GMT
[4] => Server: Apache
[5] => Strict-Transport-Security: max-age=3600; includeSubDomains
[6] => Cache-Control: s-maxage=21600, max-age=3, must-revalidate
[7] => Access-Control-Allow-Credentials: true
[8] => X-Frame-Options: DENY
[9] => X-Content-Type-Options: nosniff
[10] => Vary: Accept-Encoding, Cookie
[11] => X-Cache: Miss from cloudfront
[12] => Via: 1.1 aa0bb866c09b4e243eb9a97bcdb7fe32.cloudfront.net (CloudFront)
[13] => X-Amz-Cf-Id: QAOIIj4eBsrX0hyZ-UHjOtqA2dQePcLbEUZJ3KRohjsSPfcrcAFaiQ==
)

Example 2: In this example we use get_headers() with the optional 1 parameter to retrieve headers as an associative array from the target URL (“https://www.geeksforgeeks.org”) and prints them for detailed inspection.

php
<?php

// Target URL
$url = "https://www.geeksforgeeks.org";

// Fetching headers
$headers = get_headers($url, 1);

// Printing headers
print_r($headers);
?>

Output:

Array ( 
[0] => HTTP/1.1 200 OK
[Content-Type] => text/html; charset=UTF-8
[Connection] => close
[Date] => Sun, 19 May 2019 08:35:47 GMT
[Server] => Apache
[Strict-Transport-Security] => max-age=3600; includeSubDomains
[Cache-Control] => s-maxage=21600, max-age=3, must-revalidate
[Access-Control-Allow-Credentials] => true
[X-Frame-Options] => DENY
[X-Content-Type-Options] => nosniff
[Vary] => Accept-Encoding, Cookie
[X-Cache] => Miss from cloudfront
[Via] => 1.1 95d17b4d563934eb90636ad03f8f524e.cloudfront.net (CloudFront)
[X-Amz-Cf-Id] => se3QRyaWDeuHI3GrisMzAr4FJBamqMtbUNzhTPqAJhBoQZbWvy3UPw==
)


Next Article

Similar Reads