Heim > Artikel > Backend-Entwicklung > Was soll ich tun, wenn das per PHP heruntergeladene Bild nicht geöffnet werden kann?
Lösung für das Problem, dass mit PHP heruntergeladene Bilder nicht geöffnet werden können: 1. Setzen Sie die Codeanweisung „file_put_contents('E:/img/xxx.jpeg',$img);“ . .)" Stellungnahme.
Die Betriebsumgebung dieses Artikels: Windows7-System, PHP7.1-Version, DELL G3-Computer
php Was soll ich tun, wenn das heruntergeladene Bild nicht geöffnet werden kann?
Das Problem, dass mit PHP „curl“ oder „file_get_contents“ heruntergeladene Bilder beschädigt wurden oder nicht geöffnet werden konnten, wurde behoben. Es wurde festgestellt, dass viele Bilder beschädigt waren die Bilder beim Besuch von
https://fuss10.elemecdn.com/c/6c/69a7740b4ab864ac0639eb583d68fjpeg.jpegJa, aber das Bild wird heruntergeladen, aber beschädigt, wenn Sie curl oder file_get_contents verwenden. Der Grund dafür ist, dass das Bild fehlerhaft ist:
$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);Lösung zwei:
Fügen Sie es hinzu in Curl Dieser Code
curl_setopt($ci, CURLOPT_ENCODING,'gzip');Verwandte Einführung:
PHP cURL-Funktion Die von Daniel Stenberg erstellte, von PHP unterstützte libcurl-Bibliothek ermöglicht Ihnen die Verbindung und Kommunikation mit verschiedenen Servern über verschiedene Protokolltypen.
libcurl unterstützt derzeit die Protokolle http, https, ftp, gopher, telnet, dict, file und ldap. libcurl unterstützt außerdem HTTPS-Authentifizierung, HTTP POST, HTTP PUT, FTP-Upload (dies kann auch über die FTP-Erweiterung von PHP erfolgen), HTTP-Formular-Upload, Proxy, Cookies und Benutzername + Passwort-Authentifizierung. So verwenden Sie cURL zum Implementieren von Get- und Post-Anfragen in PHPDiese Funktionen wurden in PHP 4.0.2 eingeführt. InstallationUm die cURL-Unterstützung von PHP zu nutzen, müssen Sie beim Kompilieren von PHP die Option --with-curl[=DIR] hinzufügen. DIR ist der Verzeichnispfad, der lib und include enthält. Im Include-Verzeichnis muss ein Ordner mit dem Namen „curl“ vorhanden sein, der „easy.h“ und „curl.h“ enthält. Im lib-Ordner sollte sich eine Datei mit dem Namen libcurl.a befinden. Für PHP 4.3.0 können Sie --with-curlwrappers so konfigurieren, dass cURL URL-Streams verwendet. Hinweis: Win32-Benutzer beachten, dass zur Verwendung dieses Moduls in einer Windows-Umgebung libeay32.dll und ssleay32.dll in dem Verzeichnis abgelegt werden müssen, das in der Umgebungsvariablen PATH enthalten ist. Verwenden Sie nicht libcurl.dll von der cURL-Website. Empfohlenes Lernen: „PHP-Video-Tutorial
“Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn das per PHP heruntergeladene Bild nicht geöffnet werden kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!