使用cURL获取NULL但使用file_get_contents()获取数组

时间:2011-12-10 19:44:49

标签: php arrays json curl file-get-contents

我从链接中遇到CURL问题。我可以使用file_get_contents();获得输出但是有CURL问题

使用json_decode我使用cURL获取NULL,但使用file_get_contents()我得到一个数组

使用cURL

$url="https://example.com/" 
$ch= curl_init(); 
curl_setopt($ch, CURLOPT_URL,$url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
$json= json_decode(curl_exec($ch),true); 
echo $json; //outputs NULL

使用file_get_contents();

$json_pi = file_get_contents($url); 
echo json_decode($json_pi,true);

任何人都可以帮我理解cURL吗?为什么我可能会得到这两个相互矛盾的结果?

谢谢!

1 个答案:

答案 0 :(得分:1)

您在通话后没有进行任何错误检查,因此如果出现问题,您将永远不会听到它。

其中一个可能会揭示出问题所在。例如,可能是curl调用以非UTF-8字符集提取数据,这将导致json_decode()中断 - 它始终需要UTF-8数据。