PHP curl可以在单个请求中返回带有正文和标题的对象吗?

时间:2017-05-03 21:23:09

标签: php curl

卷曲可以将具有标题和正文的对象作为单独的属性返回吗?

这就是我现在正在做的事情。这将返回一个字符串(?),首先是标题,然后是body:

$session = curl_init($url);
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
curl_setopt($session, CURLOPT_HEADER, true);
$response = curl_exec($session);
echo $response; // string

我想要的是:

...
$response = curl_exec($session);
$header = $response->headers;
$body = $response->body;

我已经看到一个类似的问题,建议请求标题和正文然后解析结果。我不是在问这个问题。

我特别询问将object作为单独的属性返回主体和标题。

如果答案是"否,那是不可能的"然后我会接受这个答案。我也会接受"否curl没有做到这一点,但这里有另一个名为swurl(或者其他)的东西,它会返回一个对象......"

1 个答案:

答案 0 :(得分:2)

标题和正文用空行分隔,您可以直接拆分:

[$headers, $body] = explode("\r\n\r\n", $response, 2);

面向对象的企业版:

$response = new stdClass();
[$response->headers, $response->body] = explode("\r\n\r\n", curl_exec($session),  2);