source: vendor/ralouphie/getallheaders/src/getallheaders.php@ e3d4e0a

Last change on this file since e3d4e0a was e3d4e0a, checked in by Vlado 222039 <vlado.popovski@…>, 7 days ago

Upload project files

  • Property mode set to 100644
File size: 1.6 KB
RevLine 
[e3d4e0a]1<?php
2
3if (!function_exists('getallheaders')) {
4
5 /**
6 * Get all HTTP header key/values as an associative array for the current request.
7 *
8 * @return string[string] The HTTP header key/value pairs.
9 */
10 function getallheaders()
11 {
12 $headers = array();
13
14 $copy_server = array(
15 'CONTENT_TYPE' => 'Content-Type',
16 'CONTENT_LENGTH' => 'Content-Length',
17 'CONTENT_MD5' => 'Content-Md5',
18 );
19
20 foreach ($_SERVER as $key => $value) {
21 if (substr($key, 0, 5) === 'HTTP_') {
22 $key = substr($key, 5);
23 if (!isset($copy_server[$key]) || !isset($_SERVER[$key])) {
24 $key = str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', $key))));
25 $headers[$key] = $value;
26 }
27 } elseif (isset($copy_server[$key])) {
28 $headers[$copy_server[$key]] = $value;
29 }
30 }
31
32 if (!isset($headers['Authorization'])) {
33 if (isset($_SERVER['REDIRECT_HTTP_AUTHORIZATION'])) {
34 $headers['Authorization'] = $_SERVER['REDIRECT_HTTP_AUTHORIZATION'];
35 } elseif (isset($_SERVER['PHP_AUTH_USER'])) {
36 $basic_pass = isset($_SERVER['PHP_AUTH_PW']) ? $_SERVER['PHP_AUTH_PW'] : '';
37 $headers['Authorization'] = 'Basic ' . base64_encode($_SERVER['PHP_AUTH_USER'] . ':' . $basic_pass);
38 } elseif (isset($_SERVER['PHP_AUTH_DIGEST'])) {
39 $headers['Authorization'] = $_SERVER['PHP_AUTH_DIGEST'];
40 }
41 }
42
43 return $headers;
44 }
45
46}
Note: See TracBrowser for help on using the repository browser.