Cache the header fields
This commit is contained in:
parent
5cdeb8615f
commit
489510e7a9
1 changed files with 13 additions and 7 deletions
|
@ -26,6 +26,11 @@ class CurlResult
|
|||
*/
|
||||
private $header;
|
||||
|
||||
/**
|
||||
* @var array the HTTP headers of the Curl call
|
||||
*/
|
||||
private $header_fields;
|
||||
|
||||
/**
|
||||
* @var boolean true (if HTTP 2xx result) or false
|
||||
*/
|
||||
|
@ -268,20 +273,21 @@ class CurlResult
|
|||
*/
|
||||
public function getHeaderArray()
|
||||
{
|
||||
$headers = [];
|
||||
if (!empty($this->header_fields)) {
|
||||
return $this->header_fields;
|
||||
}
|
||||
|
||||
$lines = explode("\n", $this->header);
|
||||
$this->header_fields = [];
|
||||
|
||||
$lines = explode("\n", trim($this->header));
|
||||
foreach ($lines as $line) {
|
||||
$parts = explode(':', $line);
|
||||
$headerfield = strtolower(trim(array_shift($parts)));
|
||||
$headerdata = trim(implode(':', $parts));
|
||||
|
||||
if (!empty($headerdata)) {
|
||||
$headers[$headerfield] = $headerdata;
|
||||
}
|
||||
$this->header_fields[$headerfield] = $headerdata;
|
||||
}
|
||||
|
||||
return $headers;
|
||||
return $this->header_fields;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in a new issue