Skip to content

Commit 803fc39

Browse files
author
Martin Brecht-Precht
committed
Increased code climate of the Response class.
1 parent af1a3bd commit 803fc39

File tree

1 file changed

+27
-16
lines changed

1 file changed

+27
-16
lines changed

src/Response/Response.php

Lines changed: 27 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -112,20 +112,20 @@ private function setStatistics($curl)
112112
private function setEffectiveRequestHeaders($curl)
113113
{
114114
// Build effective request headers
115-
$effectiveRequestHeaders = preg_split(
115+
$requestHeaders = preg_split(
116116
'/\r\n/',
117117
curl_getinfo($curl, CURLINFO_HEADER_OUT),
118118
null,
119119
PREG_SPLIT_NO_EMPTY
120120
);
121-
foreach ($effectiveRequestHeaders as $effectiveRequestHeader) {
122-
if (strpos($effectiveRequestHeader, ':') !== false) {
123-
$headerName = mb_substr($effectiveRequestHeader, 0, strpos($effectiveRequestHeader, ':'));
124-
$headerValue = mb_substr($effectiveRequestHeader, strpos($effectiveRequestHeader, ':') + 1);
121+
foreach ($requestHeaders as $requestHeader) {
122+
if (strpos($requestHeader, ':') !== false) {
123+
$headerName = mb_substr($requestHeader, 0, strpos($requestHeader, ':'));
124+
$headerValue = mb_substr($requestHeader, strpos($requestHeader, ':') + 1);
125125
$headerValues = explode(',', $headerValue);
126126
$this->effectiveRequestHeaders[] = new RequestHeader($headerName, $headerValues);
127127
} else {
128-
$this->effectiveRequestStatus = $effectiveRequestHeader;
128+
$this->effectiveRequestStatus = $requestHeader;
129129
}
130130
}
131131
return $this;
@@ -138,7 +138,7 @@ private function setEffectiveRequestHeaders($curl)
138138
private function setResponseData($responseBody)
139139
{
140140
// Parse response
141-
$parsedResponseHeaders = array();
141+
$responseHeaders = array();
142142
$responseStatusText = null;
143143
$responseStatusCode = null;
144144
if (strpos($responseBody, "\r\n\r\n") !== false) {
@@ -158,16 +158,9 @@ private function setResponseData($responseBody)
158158
|| !$responseStatusCode >= 400
159159
)
160160
);
161-
$parsedResponseHeaders = preg_split('/\r\n/', $responseHeader, null, PREG_SPLIT_NO_EMPTY);
162-
}
163-
foreach ($parsedResponseHeaders as $parsedResponseHeader) {
164-
if (strpos($parsedResponseHeader, ':') !== false) {
165-
$headerName = mb_substr($parsedResponseHeader, 0, strpos($parsedResponseHeader, ':'));
166-
$headerValue = mb_substr($parsedResponseHeader, strpos($parsedResponseHeader, ':') + 1);
167-
$headerValues = explode(',', $headerValue);
168-
$this->headers[] = new Header($headerName, $headerValues);
169-
}
161+
$responseHeaders = preg_split('/\r\n/', $responseHeader, null, PREG_SPLIT_NO_EMPTY);
170162
}
163+
$this->setResponseHeader($responseHeaders);
171164
if (!is_null($responseStatusCode)) {
172165
$this->statusCode = $responseStatusCode;
173166
}
@@ -177,4 +170,22 @@ private function setResponseData($responseBody)
177170
$this->body = $responseBody;
178171
return $this;
179172
}
173+
174+
/**
175+
* @param string[] $responseHeaders
176+
* @return $this
177+
*/
178+
private function setResponseHeader(array $responseHeaders)
179+
{
180+
foreach ($responseHeaders as $responseHeader) {
181+
if (strpos($responseHeader, ':') !== false) {
182+
$headerName = mb_substr($responseHeader, 0, strpos($responseHeader, ':'));
183+
$headerValue = mb_substr($responseHeader, strpos($responseHeader, ':') + 1);
184+
$headerValues = explode(',', $headerValue);
185+
$this->headers[] = new Header($headerName, $headerValues);
186+
}
187+
}
188+
return $this;
189+
}
190+
180191
}

0 commit comments

Comments
 (0)