2011-06-08 120 views
0

我正在研究一個項目,我正在使用curl從網站獲取一些數據(更像是API調用)。前天晚上我檢查的一切,這是工作順利,但突然昨天上午,我開始收到一個錯誤:Curl突然停止工作了

一個PHP錯誤遇到

嚴重性:警告

消息:DOM文檔:: loadXML的()[domdocument.loadxml]:作爲輸入供給的空字符串

文件名:控制器/ user.php的

我的代碼是:

$ch=curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
$data=curl_exec($ch); 
curl_close($ch); 
$doc = new DOMDocument(); 
$doc->loadXML($data); 
$doc->save("test2.xml"); 

該網址是正確的,因爲一切都在2天前工作!

我正在使用wamp服務器,php_curl已啓用!

這是我想要撥打的API!除curl之外,還有其他方法可以發送請求並獲取數據嗎?

+2

服務器上發生了什麼變化?你在共享主機系統?也許他們執行維護並更改了庫或配置設置...檢查'phpinfo()'看起來有什麼不同。 – 2011-06-08 19:07:47

+0

更有可能是關於網站訪問的東西已經改變。它返回什麼類型的頭文件? – Wrikken 2011-06-08 19:10:15

+0

我在localhost上測試,所以沒有任何改變! – Saurabh 2011-06-08 19:15:36

回答

1

作爲替代嘗試echo file_get_contents($url);

也看到,如果你這樣做你會得到什麼:

$data=curl_exec($ch); 
echo curl_error($ch); 
echo "<br>"; 
$info = curl_getinfo($ch); 
print_r($info); 
curl_close($ch); 

的捲曲信息和捲曲的錯誤可能給你關於請求的一些見解。

+0

消息:file_get_contents()[function.file-get-contents]:無法找到包裝器「https」 - 你忘記配置PHP時啓用它嗎? – Saurabh 2011-06-09 03:11:18

+0

捲曲錯誤不會返回任何東西! – Saurabh 2011-06-09 03:13:47

+0

這是我試圖撥打的[API](http://wiki.nus.edu.sg/display/ivlelapi/Module)!除curl之外,還有其他方法可以發送請求並獲取數據嗎? – Saurabh 2011-06-09 03:14:09