2014-03-29 15 views
0

如果不确定输入的数据格式和卷曲设置的内容,以任何格式显示或处理结果的方式是什么。如何处理未知的PHP cURL结果

为例

$ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, "http://www.example.com/"); 
    $result = curl_exec($ch); 
+1

这就是为什么服务器发回像头的Content-Type – Anthony

+0

使用[狂饮(http://guzzle.readthedocs.org/en/latest/)。 – Prasanth

+0

@Anthiny,谢谢,但是在一个非常模棱两可的情况下,我们甚至可能不确定正确的选项和参数。标题可能不够。 – ALMEK

回答

1

使用CURLOPT_RETURNTRANSFER将帮助您返回在$result中卷曲的响应。否则它将永远是空的。

使用$headers = curl_getinfo($ch);您可以从curl请求中获得响应头,然后检查content-type是什么。基于此,您可以决定要做什么。

下面是示例代码:

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/"); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
$result = curl_exec($ch); 
$headers = curl_getinfo($ch); 

print "Content-Type: " . $headers['content_type'] . "\n"; 
print "response: $result\n"; 
+0

谢谢,但在一个非常模糊的情况下,我们甚至可能不确定正确的选项和参数。标题可能不够。 – ALMEK

1

根据您要专门用它做,你可以转储最简单的方法你会得到什么回应,这是什么:

的print_r($结果);

这只是简单地转储您收到的所有内容,以便您了解服务器返回的内容。