1. 程式人生 > 實用技巧 >解決PHP curl或file_get_contents下載圖片損壞或無法開啟的問題

解決PHP curl或file_get_contents下載圖片損壞或無法開啟的問題

通過curl或者file_get_contents獲取抓取遠端圖片並且儲存到本地,發現損壞了很多圖片,比如訪問

https://fuss10.elemecdn.com/c/6c/69a7740b4ab864ac0639eb583d68fjpeg.jpeg

是可以訪問到圖片的,但是curl或者file_get_contents時圖片下載下來了卻損壞了,

就類似這樣:

原因是圖片被gizp了

解決辦法一:

 $url = 'https://fuss10.elemecdn.com/c/6c/69a7740b4ab864ac0639eb583d68fjpeg.jpeg';
 $img = file_get_contents("compress.zlib://".$url);
 $data = file_put_contents('E:/img/aaaaaaaaaaaa.jpeg',$img);

解決辦法二:

在curl里加上這段程式碼

curl_setopt($ci, CURLOPT_ENCODING,'gzip');

以上這篇解決PHP curl或file_get_contents下載圖片損壞或無法開啟的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援碼農教程。