In diesem Artikel wird kurz vorgestellt, wie die Bilder oder Dateien im ZIP-komprimierten Paket direkt angezeigt werden, ohne sie in PHP zu dekomprimieren. Ich hoffe, dass dies möglich ist nützlich für alle. Inspiriert
Jeder sollte die grundlegende Methode zum Betrieb von ZIP-Archivdateien mit PHP kennen (wenn Sie es nicht wissen, können Sie die Grundlagen erlernen). Wie kann ich dann die Dateien im komprimierten Paket direkt lesen, ohne sie zu dekomprimieren, z. B. die Bilder im komprimierten Paket direkt auf der Seite anzeigen?
Im Folgenden erfahren Sie, wie Sie die Bilddateien im komprimierten Paket ohne Dekomprimierung direkt anzeigen können
$zip_path = '12.zip';//压缩包实际路径 $zip = zip_open($zip_path);//利用zip_open函数打开压缩包 while ($re = zip_read($zip)) {//读依次读取包中的文件 if (!zip_entry_filesize($re)) break;//如果文件大小为0退出操作 $entry_zp = zip_entry_open($zip,$re,'rb');//读取包中文件 $ext = pathinfo(zip_entry_name ($re),PATHINFO_EXTENSION);//获取图片文件扩展名 $buf = zip_entry_read($re,zip_entry_filesize($re));//读取文件二进制数据 echo sprintf('<img src="data:image/%s;base64,%s">', $ext, base64_encode($buf));//利用base64_encode函数转换读取到的二进制数据并输入输出到页面中 zip_entry_close($re);//关闭打开的压缩包中的文件 } zip_close($zip);//关闭压缩包文件
Der Hauptzweck dieses Codes besteht darin, base64_encode zu verwenden, um die Binärdaten der Bilddatei in browserlesbare Base64-Bilddaten umzuwandeln
Hinweis: Bei Verwendung Bitte bestätigen Sie, dass die Erweiterungsbibliothek php_zip.dll in Ihrer PHP.ini-Datei aktiviert wurde und ob sich php_zip.dll im ext-Ordner im PHP-Installationsverzeichnis befindet (ich verwende ein Windows-System), damit die ZIP FILE-Reihe von PHP funktioniert. Wenn php_zip.dll nicht vorhanden ist, können Sie es auf der folgenden Website des offiziellen PECL-Erweiterungspakets von PHP erhalten:
Adresse der offiziellen Website des PECL-Erweiterungspakets von PHP: http://pecl.php.net/package/zip
Wählen Sie das komprimierte Paket aus, das Ihrer PHP-Version entspricht.
Unter Windows können Sie die Datei php_zip.dll direkt per Drag & Drop in den ext-Ordner im PHP-Installationsverzeichnis ziehen Das Linux-System muss kompiliert werden. Ändern Sie dann die PHP-Konfigurationsdatei
函数 | 描述 | PHP |
---|---|---|
zip_close() | 关闭 ZIP 文件。 | 4 |
zip_entry_close() | 关闭 ZIP 文件中的一个项目。 | 4 |
zip_entry_compressedsize() | 返回 ZIP 文件中的一个项目的被压缩尺寸。 | 4 |
zip_entry_compressionmethod() | 返回 ZIP 文件中的一个项目的压缩方法。 | 4 |
zip_entry_filesize() | 返回 ZIP 文件中的一个项目的实际文件尺寸。 | 4 |
zip_entry_name() | 返回 ZIP 文件中的一个项目的名称。 | 4 |
zip_entry_open() | 打开 ZIP 文件中的一个项目以供读取。 | 4 |
zip_entry_read() | 读取 ZIP 文件中的一个打开的项目。 | 4 |
zip_open() | 打开 ZIP 文件。 | 4 |
zip_read() | 读取 ZIP 文件中的下一个项目。 | 4 |
Detaillierte Analyse von Beispielen zur Implementierung der Check-in-Funktion in PHP
Lösung des Problems von Speichererschöpfung durch zu viele PHP-FPM-Prozesse unter Linux. Detaillierte Erklärung
Detaillierte Erklärung einer Beispielanalyse der Methode zur Implementierung der Check-in-Funktion in PHP
Das obige ist der detaillierte Inhalt vonErklärung, wie man PHP verwendet, um zip zu bedienen und die Bilder im komprimierten Paket anzuzeigen, ohne das Paket zu dekomprimieren.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!