protected function canonicalizeHeaders()
    {
        $canonical = array();
        $headers = array();
        if (isset($this->config['headers'])) {
            $headers = array_map('strtolower', array_keys($this->config['headers']));
            if (count($this->config['headers']) > 0) {
                $headers = array_combine(
                    $headers,
                    array_values($this->config['headers'])
                );
            }
        }

        foreach ($this->headers_to_sign as $key) {
            $key = strtolower($key);
            if (isset($headers[$key])) {
                if (is_array($headers[$key]) && count($headers[$key]) >= 1) {
                    $value = trim($headers[$key][0]);
                } elseif (is_array($headers[$key]) && count($headers[$key]) === 0) {
                    continue;
                } else {
                    $value = trim($headers[$key]);
                }

                if (!empty($value)) {
                    $canonical[$key] = preg_replace('/\s+/', ' ', $value);
                }
            }
        }

        ksort($canonical);
        $serialized_header = '';
        foreach ($canonical as $key => $value) {
            $serialized_header .= $key . ':' . $value . "\t";
        }

        return rtrim($serialized_header);
    }
protected function canonicalizeHeaders()
    {
        $canonical = array();
        $headers = array();
        if (isset($this->config['headers'])) {
            $headers = array_map('strtolower', array_keys($this->config['headers']));
            if (count($this->config['headers']) > 0) {
                $headers = array_combine(
                    $headers,
                    array_values($this->config['headers'])
                );
            }
        }

        foreach ($this->headers_to_sign as $key) {
            $key = strtolower($key);
            if (isset($headers[$key])) {
                if (is_array($headers[$key]) && count($headers[$key]) >= 1) {
                    $value = trim($headers[$key][0]);
                } elseif (is_array($headers[$key]) && count($headers[$key]) === 0) {
                    continue;
                } else {
                    $value = trim($headers[$key]);
                }

                if (!empty($value)) {
                    $canonical[$key] = preg_replace('/\s+/', ' ', $value);
                }
            }
        }

        ksort($canonical);
        $serialized_header = '';
        foreach ($canonical as $key => $value) {
            $serialized_header .= $key . ':' . $value . "\t";
        }

        return rtrim($serialized_header);
    }
protected function canonicalizeHeaders ( ) { $ canonical = array ( ) ; $ headers = array ( ) ; if ( isset ( $ this -> config [ 'headers' ] ) ) { $ headers = array_map ( 'strtolower' , array_keys ( $ this -> config [ 'headers' ] ) ) ; if ( count ( $ this -> config [ 'headers' ] ) > 0 ) { $ headers = array_combine ( $ headers , array_values ( $ this -> config [ 'headers' ] ) ) ; } } foreach ( $ this -> headers_to_sign as $ key ) { $ key = strtolower ( $ key ) ; if ( isset ( $ headers [ $ key ] ) ) { if ( is_array ( $ headers [ $ key ] ) && count ( $ headers [ $ key ] ) >= 1 ) { $ value = trim ( $ headers [ $ key ] [ 0 ] ) ; } elseif ( is_array ( $ headers [ $ key ] ) && count ( $ headers [ $ key ] ) === 0 ) { continue ; } else { $ value = trim ( $ headers [ $ key ] ) ; } if ( ! empty ( $ value ) ) { $ canonical [ $ key ] = preg_replace ( '/\s+/' , ' ' , $ value ) ; } } } ksort ( $ canonical ) ; $ serialized_header = '' ; foreach ( $ canonical as $ key => $ value ) { $ serialized_header .= $ key . ':' . $ value . "\t" ; } return rtrim ( $ serialized_header ) ; }
Returns headers in normalized form

@return string
Returns headers in normalized form