private function parseHeaders($headerContent)
    {
        $headers = [];
        $headerParts = preg_split('/\\R/s', $headerContent, -1, PREG_SPLIT_NO_EMPTY);
        foreach ($headerParts as $headerPart) {
            if (strpos($headerPart, ':') === false) {
                continue;
            }

            [$headerName, $headerValue] = explode(':', $headerPart, 2);
            $headerName = strtolower(trim($headerName));
            $headerValue = trim($headerValue);

            if (strpos($headerValue, ';') === false) {
                $headers[$headerName] = $headerValue;
            } else {
                $headers[$headerName] = [];
                foreach (explode(';', $headerValue) as $part) {
                    $part = trim($part);
                    if (strpos($part, '=') === false) {
                        $headers[$headerName][] = $part;
                    } else {
                        [$name, $value] = explode('=', $part, 2);
                        $name = strtolower(trim($name));
                        $value = trim(trim($value), '"');
                        $headers[$headerName][$name] = $value;
                    }
                }
            }
        }

        return $headers;
    }
private function parseHeaders($headerContent)
    {
        $headers = [];
        $headerParts = preg_split('/\\R/s', $headerContent, -1, PREG_SPLIT_NO_EMPTY);
        foreach ($headerParts as $headerPart) {
            if (strpos($headerPart, ':') === false) {
                continue;
            }

            [$headerName, $headerValue] = explode(':', $headerPart, 2);
            $headerName = strtolower(trim($headerName));
            $headerValue = trim($headerValue);

            if (strpos($headerValue, ';') === false) {
                $headers[$headerName] = $headerValue;
            } else {
                $headers[$headerName] = [];
                foreach (explode(';', $headerValue) as $part) {
                    $part = trim($part);
                    if (strpos($part, '=') === false) {
                        $headers[$headerName][] = $part;
                    } else {
                        [$name, $value] = explode('=', $part, 2);
                        $name = strtolower(trim($name));
                        $value = trim(trim($value), '"');
                        $headers[$headerName][$name] = $value;
                    }
                }
            }
        }

        return $headers;
    }
private function parseHeaders ( $ headerContent ) { $ headers = [ ] ; $ headerParts = preg_split ( '/\\R/s' , $ headerContent , - 1 , PREG_SPLIT_NO_EMPTY ) ; foreach ( $ headerParts as $ headerPart ) { if ( strpos ( $ headerPart , ':' ) === false ) { continue ; } [ $ headerName , $ headerValue ] = explode ( ':' , $ headerPart , 2 ) ; $ headerName = strtolower ( trim ( $ headerName ) ) ; $ headerValue = trim ( $ headerValue ) ; if ( strpos ( $ headerValue , ';' ) === false ) { $ headers [ $ headerName ] = $ headerValue ; } else { $ headers [ $ headerName ] = [ ] ; foreach ( explode ( ';' , $ headerValue ) as $ part ) { $ part = trim ( $ part ) ; if ( strpos ( $ part , '=' ) === false ) { $ headers [ $ headerName ] [ ] = $ part ; } else { [ $ name , $ value ] = explode ( '=' , $ part , 2 ) ; $ name = strtolower ( trim ( $ name ) ) ; $ value = trim ( trim ( $ value ) , '"' ) ; $ headers [ $ headerName ] [ $ name ] = $ value ; } } } } return $ headers ; }
Parses content part headers.
@param string $headerContent headers source content
@return array parsed headers.
Parses content part headers .