|
|
|
@ -10,40 +10,43 @@ class Response
@@ -10,40 +10,43 @@ class Response
|
|
|
|
|
private ?string $_meta = null; |
|
|
|
|
private ?string $_body = null; |
|
|
|
|
|
|
|
|
|
public function __construct(string $data) |
|
|
|
|
public function __construct(?string $data = null) |
|
|
|
|
{ |
|
|
|
|
$match = []; |
|
|
|
|
if ($data) |
|
|
|
|
{ |
|
|
|
|
$match = []; |
|
|
|
|
|
|
|
|
|
preg_match( |
|
|
|
|
'/(?<status>\d{2})\s(?<meta>.*)\r\n(?<body>.*)/su', |
|
|
|
|
$data, |
|
|
|
|
$match |
|
|
|
|
); |
|
|
|
|
preg_match( |
|
|
|
|
'/(?<status>\d{2})\s(?<meta>.*)\r\n(?<body>.*)/su', |
|
|
|
|
$data, |
|
|
|
|
$match |
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
if (isset($match['code'])) |
|
|
|
|
{ |
|
|
|
|
$code = (int) $match['code']; |
|
|
|
|
if (isset($match['code'])) |
|
|
|
|
{ |
|
|
|
|
$code = (int) $match['code']; |
|
|
|
|
|
|
|
|
|
if ($code >= 10 && $code <= 69) |
|
|
|
|
if ($code >= 10 && $code <= 69) |
|
|
|
|
{ |
|
|
|
|
$this->setCode( |
|
|
|
|
$code |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (isset($match['meta']) && mb_strlen($match['meta']) <= 1024) |
|
|
|
|
{ |
|
|
|
|
$this->setCode( |
|
|
|
|
$code |
|
|
|
|
$this->setMeta( |
|
|
|
|
(string) $match['meta'] |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (isset($match['meta']) && mb_strlen($match['meta']) <= 1024) |
|
|
|
|
{ |
|
|
|
|
$this->setMeta( |
|
|
|
|
(string) $match['meta'] |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (isset($match['body'])) |
|
|
|
|
{ |
|
|
|
|
$this->setBody( |
|
|
|
|
(string) (string) $match['body'] |
|
|
|
|
); |
|
|
|
|
if (isset($match['body'])) |
|
|
|
|
{ |
|
|
|
|
$this->setBody( |
|
|
|
|
(string) (string) $match['body'] |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|