2013-08-29 91 views
2

我正在對YouTube數據API執行請求。如何處理file_get_contents失敗的錯誤消息?

用戶輸入有帳戶名稱,保存設置,然後檢查是否有什麼影片上有賬號的頁面 -

如果他們進入自己的帳戶名稱錯誤,或者帳戶名稱不存在,我希望它以顯示錯誤消息,說明他們輸入了錯誤的帳戶名稱。

如果成功,它應該只打印列表中的視頻。

如果帳戶名稱正確,我從YouTube上打印視頻/從中提取視頻。如果是錯的,我得到一個File_Get_Contents失敗 -

Warning: file_get_contents(http://gdata.youtube.com/feeds/api/users/ddd/uploads? 
v=2&alt=json): failed to open stream: HTTP request failed! HTTP/1.0 404 Not Found 
in C:\xampp\htdocs\site\wp-content\plugins\plugin\includes\get_vid_list.php on 
line 379 

我想的不是打印我希望它打印錯誤信息給用戶的錯誤,:

如何檢查是否file_get_contents()被成功與否?

+0

我試圖 $數據= json_decode(的file_get_contents($網址),真); if($ data === false){print error message} – EHerman

+0

f_g_c是一個非常簡單的工具。如果你想更好地控制失敗,你應該使用一些更適合於處理HTTP請求可以拋給你的東西,比如CURL。 –

+0

是否很難從f_g_c調用切換到CURL請求? aka這會涉及到篡改我的代碼很多? – EHerman

回答

1

使用PHP的@修改禁止自動錯誤報告:

$contents = @file_get_contents($url); 
if (!$contents) { 
    // Report error 
} 
+1

我剛試過這個,它抑制了我的錯誤,並且什麼也沒有顯示。我有一個自定義錯誤消息,我想要顯示 – EHerman

+0

當發生這種情況時,'var_dump($ contents)'顯示什麼? – Barmar

+0

您是否用代碼替換了'//報告錯誤'以迴應您的自定義錯誤消息? – Barmar

相關問題