我需要file_get_contents
是容錯的,因爲如果$url
送到它返回一個,告訴我它之前它回聲警告。這可以做到嗎?file_get_contents會優雅地失敗嗎?
9
A
回答
16
任何使用HTTP包裝器訪問遠程文件的函數,就好像它是本地的,將自動生成本地作用域中名爲$http_response_header
的局部變量。您可以訪問該變量以查找有關在遠程文件上調用fopen
,file_get_contents
...時發生的情況的信息。
您可以使用@
來抑制警告:@file_get_contents
。
如果你不關心是什麼錯誤,你可以使用@file_get_contents
,並將結果false
比較:
$content = @file_get_contents(url);
if ($content === false) { /* failure */ } else { /* success */ }
6
你可以做一個額外的(HEAD)的要求,找出第一,例如
$response = get_headers($url);
if($response[1] === 'HTTP/1.1 200 OK') {
$content = file_get_contents($url);
}
或者你可以告訴file_get_contents
忽略任何錯誤,並通過修改流上下文力取$url
結果:
echo file_get_contents(
'http://www.example.com/foo.html',
FALSE,
stream_context_create(array('http'=>array('ignore_errors' => TRUE)))
)
相關問題
- 1. 如何讓sprintf優雅地失敗?
- 2. 優雅的方式失敗
- 3. 如果我卸載MSDN庫,Visual Studio 2003和2008會不會優雅地失敗
- 4. file_get_contents失敗
- 5. Dask worker優雅任務失敗
- 6. 在int()調用Python優雅失敗?
- 7. 優雅的構建後事件失敗
- 8. 如何讓SimplePie在無效提要上優雅地失敗?
- 9. 如何在未安裝.NET的情況下優雅地失敗?
- 10. 服務結構 - 如何優雅地失敗應用程序
- 11. 我該如何優雅地處理JSF應用程序失敗?
- 12. 在失敗的file_get_contents
- 13. 優雅地處理「MySQL已經消失」
- 14. jqGrid可以優雅地降級嗎?
- 15. document.createElement(「」)會失敗嗎?
- 16. 如果子查詢爲空,MySQL會優雅地中止嗎?
- 17. LAST_INSERT_ID函數會失敗嗎?
- 18. TimeZone.getTimeZone()會隨機失敗嗎?
- 19. Python原生擴展模塊崩潰:解釋器能否優雅地失敗?
- 20. 谷歌地圖街景不總是加載 - 如何使它失敗優雅
- 21. 我該如何讓LINQ Lambda表達式像XPath一樣優雅地失敗?
- 22. ember promise - 使用模型鉤優雅地處理失敗的承諾
- 23. 如何在包含文件不存在時優雅地失敗CMake?
- 24. 優雅的地圖實現
- 25. 優雅地處理socket.close()
- 26. 優雅地停止NSXMLParser?
- 27. 優雅地退出線程
- 28. 優雅地停止線程
- 29. 優雅地轉義錯誤
- 30. 優雅地禁用警告
正是我需要的,謝謝! – 2016-02-15 01:32:30