protected function parseHeader($line)
{
$line = trim($line);
if (empty($line)) {
return;
}
if (strpos($line, ':') === false) {
throw new \Exception('Header without colon found: ' . $line);
}
list($headername, $headervalue) = explode(":", $line, 2);
$headername = trim($headername);
$headervalue = trim($headervalue);
if (isset($this->responseHeaders[$headername])) {
if (!is_array($this->responseHeaders[$headername])) {
// convert to array
$this->responseHeaders[$headername] = [$this->responseHeaders[$headername]];
}
$this->responseHeaders[$headername][] = $headervalue;
} else {
$this->responseHeaders[$headername] = $headervalue;
}
}