通過curl或者file_get_contents獲取抓取遠程圖片并且保存到本地,發現損壞了很多圖片,比如訪問
1
|
https: //fuss10.elemecdn.com/c/6c/69a7740b4ab864ac0639eb583d68fjpeg.jpeg |
是可以訪問到圖片的,但是curl或者file_get_contents時圖片下載下來了卻損壞了,
就類似這樣:
原因是圖片被gizp了
解決辦法一:
1
2
3
|
$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里加上這段代碼
1
|
curl_setopt( $ci , CURLOPT_ENCODING, 'gzip' ); |
以上這篇解決PHP curl或file_get_contents下載圖片損壞或無法打開的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持服務器之家。
原文鏈接:https://blog.csdn.net/helloworld_dream/article/details/84107558