original_string: public function getHeaders()
      {
          $headers = [];
          $contentHeaders = ['CONTENT_LENGTH' => true, 'CONTENT_MD5' => true, 'CONTENT_TYPE' => true];
          foreach ($this->parameters as $key => $value) {
              if (0 === strpos($key, 'HTTP_')) {
                  $headers[substr($key, 5)] = $value;
              }
              // CONTENT_* are not prefixed with HTTP_
              elseif (isset($contentHeaders[$key])) {
                  $headers[$key] = $value;
              }
          }
  
          if (isset($this->parameters['PHP_AUTH_USER'])) {
              $headers['PHP_AUTH_USER'] = $this->parameters['PHP_AUTH_USER'];
              $headers['PHP_AUTH_PW'] = isset($this->parameters['PHP_AUTH_PW']) ? $this->parameters['PHP_AUTH_PW'] : '';
          } else {
              /*
               * php-cgi under Apache does not pass HTTP Basic user/pass to PHP by default
               * For this workaround to work, add these lines to your .htaccess file:
               * RewriteCond %{HTTP:Authorization} ^(.+)$
               * RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
               *
               * A sample .htaccess file:
               * RewriteEngine On
               * RewriteCond %{HTTP:Authorization} ^(.+)$
               * RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
               * RewriteCond %{REQUEST_FILENAME} !-f
               * RewriteRule ^(.*)$ app.php [QSA,L]
               */
  
              $authorizationHeader = null;
              if (isset($this->parameters['HTTP_AUTHORIZATION'])) {
                  $authorizationHeader = $this->parameters['HTTP_AUTHORIZATION'];
              } elseif (isset($this->parameters['REDIRECT_HTTP_AUTHORIZATION'])) {
                  $authorizationHeader = $this->parameters['REDIRECT_HTTP_AUTHORIZATION'];
              }
  
              if (null !== $authorizationHeader) {
                  if (0 === stripos($authorizationHeader, 'basic ')) {
                      // Decode AUTHORIZATION header into PHP_AUTH_USER and PHP_AUTH_PW when authorization header is basic
                      $exploded = explode(':', base64_decode(substr($authorizationHeader, 6)), 2);
                      if (2 == \count($exploded)) {
                          list($headers['PHP_AUTH_USER'], $headers['PHP_AUTH_PW']) = $exploded;
                      }
                  } elseif (empty($this->parameters['PHP_AUTH_DIGEST']) && (0 === stripos($authorizationHeader, 'digest '))) {
                      // In some circumstances PHP_AUTH_DIGEST needs to be set
                      $headers['PHP_AUTH_DIGEST'] = $authorizationHeader;
                      $this->parameters['PHP_AUTH_DIGEST'] = $authorizationHeader;
                  } elseif (0 === stripos($authorizationHeader, 'bearer ')) {
                      /*
                       * XXX: Since there is no PHP_AUTH_BEARER in PHP predefined variables,
                       *      I'll just set $headers['AUTHORIZATION'] here.
                       *      http://php.net/manual/en/reserved.variables.server.php
                       */
                      $headers['AUTHORIZATION'] = $authorizationHeader;
                  }
              }
          }
  
          if (isset($headers['AUTHORIZATION'])) {
              return $headers;
          }
  
          // PHP_AUTH_USER/PHP_AUTH_PW
          if (isset($headers['PHP_AUTH_USER'])) {
              $headers['AUTHORIZATION'] = 'Basic '.base64_encode($headers['PHP_AUTH_USER'].':'.$headers['PHP_AUTH_PW']);
          } elseif (isset($headers['PHP_AUTH_DIGEST'])) {
              $headers['AUTHORIZATION'] = $headers['PHP_AUTH_DIGEST'];
          }
  
          return $headers;
      }
code: public function getHeaders()
      {
          $headers = [];
          $contentHeaders = ['CONTENT_LENGTH' => true, 'CONTENT_MD5' => true, 'CONTENT_TYPE' => true];
          foreach ($this->parameters as $key => $value) {
              if (0 === strpos($key, 'HTTP_')) {
                  $headers[substr($key, 5)] = $value;
              }
              // CONTENT_* are not prefixed with HTTP_
              elseif (isset($contentHeaders[$key])) {
                  $headers[$key] = $value;
              }
          }
  
          if (isset($this->parameters['PHP_AUTH_USER'])) {
              $headers['PHP_AUTH_USER'] = $this->parameters['PHP_AUTH_USER'];
              $headers['PHP_AUTH_PW'] = isset($this->parameters['PHP_AUTH_PW']) ? $this->parameters['PHP_AUTH_PW'] : '';
          } else {
              /*
               * php-cgi under Apache does not pass HTTP Basic user/pass to PHP by default
               * For this workaround to work, add these lines to your .htaccess file:
               * RewriteCond %{HTTP:Authorization} ^(.+)$
               * RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
               *
               * A sample .htaccess file:
               * RewriteEngine On
               * RewriteCond %{HTTP:Authorization} ^(.+)$
               * RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
               * RewriteCond %{REQUEST_FILENAME} !-f
               * RewriteRule ^(.*)$ app.php [QSA,L]
               */
  
              $authorizationHeader = null;
              if (isset($this->parameters['HTTP_AUTHORIZATION'])) {
                  $authorizationHeader = $this->parameters['HTTP_AUTHORIZATION'];
              } elseif (isset($this->parameters['REDIRECT_HTTP_AUTHORIZATION'])) {
                  $authorizationHeader = $this->parameters['REDIRECT_HTTP_AUTHORIZATION'];
              }
  
              if (null !== $authorizationHeader) {
                  if (0 === stripos($authorizationHeader, 'basic ')) {
                      // Decode AUTHORIZATION header into PHP_AUTH_USER and PHP_AUTH_PW when authorization header is basic
                      $exploded = explode(':', base64_decode(substr($authorizationHeader, 6)), 2);
                      if (2 == \count($exploded)) {
                          list($headers['PHP_AUTH_USER'], $headers['PHP_AUTH_PW']) = $exploded;
                      }
                  } elseif (empty($this->parameters['PHP_AUTH_DIGEST']) && (0 === stripos($authorizationHeader, 'digest '))) {
                      // In some circumstances PHP_AUTH_DIGEST needs to be set
                      $headers['PHP_AUTH_DIGEST'] = $authorizationHeader;
                      $this->parameters['PHP_AUTH_DIGEST'] = $authorizationHeader;
                  } elseif (0 === stripos($authorizationHeader, 'bearer ')) {
                      /*
                       * XXX: Since there is no PHP_AUTH_BEARER in PHP predefined variables,
                       *      I'll just set $headers['AUTHORIZATION'] here.
                       *      http://php.net/manual/en/reserved.variables.server.php
                       */
                      $headers['AUTHORIZATION'] = $authorizationHeader;
                  }
              }
          }
  
          if (isset($headers['AUTHORIZATION'])) {
              return $headers;
          }
  
          // PHP_AUTH_USER/PHP_AUTH_PW
          if (isset($headers['PHP_AUTH_USER'])) {
              $headers['AUTHORIZATION'] = 'Basic '.base64_encode($headers['PHP_AUTH_USER'].':'.$headers['PHP_AUTH_PW']);
          } elseif (isset($headers['PHP_AUTH_DIGEST'])) {
              $headers['AUTHORIZATION'] = $headers['PHP_AUTH_DIGEST'];
          }
  
          return $headers;
      }
code_tokens: public function getHeaders ( ) { $ headers = [ ] ; $ contentHeaders = [ 'CONTENT_LENGTH' => true , 'CONTENT_MD5' => true , 'CONTENT_TYPE' => true ] ; foreach ( $ this -> parameters as $ key => $ value ) { if ( 0 === strpos ( $ key , 'HTTP_' ) ) { $ headers [ substr ( $ key , 5 ) ] = $ value ; } // CONTENT_* are not prefixed with HTTP_ elseif ( isset ( $ contentHeaders [ $ key ] ) ) { $ headers [ $ key ] = $ value ; } } if ( isset ( $ this -> parameters [ 'PHP_AUTH_USER' ] ) ) { $ headers [ 'PHP_AUTH_USER' ] = $ this -> parameters [ 'PHP_AUTH_USER' ] ; $ headers [ 'PHP_AUTH_PW' ] = isset ( $ this -> parameters [ 'PHP_AUTH_PW' ] ) ? $ this -> parameters [ 'PHP_AUTH_PW' ] : '' ; } else { /*
               * php-cgi under Apache does not pass HTTP Basic user/pass to PHP by default
               * For this workaround to work, add these lines to your .htaccess file:
               * RewriteCond %{HTTP:Authorization} ^(.+)$
               * RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
               *
               * A sample .htaccess file:
               * RewriteEngine On
               * RewriteCond %{HTTP:Authorization} ^(.+)$
               * RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
               * RewriteCond %{REQUEST_FILENAME} !-f
               * RewriteRule ^(.*)$ app.php [QSA,L]
               */ $ authorizationHeader = null ; if ( isset ( $ this -> parameters [ 'HTTP_AUTHORIZATION' ] ) ) { $ authorizationHeader = $ this -> parameters [ 'HTTP_AUTHORIZATION' ] ; } elseif ( isset ( $ this -> parameters [ 'REDIRECT_HTTP_AUTHORIZATION' ] ) ) { $ authorizationHeader = $ this -> parameters [ 'REDIRECT_HTTP_AUTHORIZATION' ] ; } if ( null !== $ authorizationHeader ) { if ( 0 === stripos ( $ authorizationHeader , 'basic ' ) ) { // Decode AUTHORIZATION header into PHP_AUTH_USER and PHP_AUTH_PW when authorization header is basic $ exploded = explode ( ':' , base64_decode ( substr ( $ authorizationHeader , 6 ) ) , 2 ) ; if ( 2 == \ count ( $ exploded ) ) { list ( $ headers [ 'PHP_AUTH_USER' ] , $ headers [ 'PHP_AUTH_PW' ] ) = $ exploded ; } } elseif ( empty ( $ this -> parameters [ 'PHP_AUTH_DIGEST' ] ) && ( 0 === stripos ( $ authorizationHeader , 'digest ' ) ) ) { // In some circumstances PHP_AUTH_DIGEST needs to be set $ headers [ 'PHP_AUTH_DIGEST' ] = $ authorizationHeader ; $ this -> parameters [ 'PHP_AUTH_DIGEST' ] = $ authorizationHeader ; } elseif ( 0 === stripos ( $ authorizationHeader , 'bearer ' ) ) { /*
                       * XXX: Since there is no PHP_AUTH_BEARER in PHP predefined variables,
                       *      I'll just set $headers['AUTHORIZATION'] here.
                       *      http://php.net/manual/en/reserved.variables.server.php
                       */ $ headers [ 'AUTHORIZATION' ] = $ authorizationHeader ; } } } if ( isset ( $ headers [ 'AUTHORIZATION' ] ) ) { return $ headers ; } // PHP_AUTH_USER/PHP_AUTH_PW if ( isset ( $ headers [ 'PHP_AUTH_USER' ] ) ) { $ headers [ 'AUTHORIZATION' ] = 'Basic ' . base64_encode ( $ headers [ 'PHP_AUTH_USER' ] . ':' . $ headers [ 'PHP_AUTH_PW' ] ) ; } elseif ( isset ( $ headers [ 'PHP_AUTH_DIGEST' ] ) ) { $ headers [ 'AUTHORIZATION' ] = $ headers [ 'PHP_AUTH_DIGEST' ] ; } return $ headers ; }
docstring: Gets the HTTP headers.
  
  @return array
docstring_tokens: Gets the HTTP headers .