PHP を使用して圧縮パッケージ内の画像を解凍せずに表示する方法

php中世界最好的语言
リリース: 2023-03-18 06:54:02
オリジナル
1552 人が閲覧しました

PHP を使用して ZIP 圧縮ファイルを操作する方法は誰もが知っていると思いますが、特殊な場合には、圧縮パッケージ内のファイルを解凍せずに表示する必要があります。今日はそんな方法をご紹介しますので、一緒に見ていきましょう。

$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(&#39;<img src="data:image/%s;base64,%s">&#39;, $ext, base64_encode($buf));//利用base64_encode函数转换读取到的二进制数据并输入输出到页面中
 zip_entry_close($re);//关闭打开的压缩包中的文件
}
zip_close($zip);//关闭压缩包文件
ログイン後にコピー



このコードで最も重要なことは、base64_encodeを使用して画像ファイルのバイナリデータをブラウザで読み取り可能なBase64画像データに変換することです

注: PHPのZIP FILEシリーズの関数を使用する場合は確認してくださいphp_zip.dll 拡張ライブラリが PHP.ini ファイルで有効になっているかどうか、および PHP インストール ディレクトリの ext フォルダに php_zip.dll があるかどうか (Windows システムを使用しています)。 php_zip.dll が存在しない場合は、次の PHP 公式 PECL 拡張パッケージ サイトにアクセスして入手できます

PHP 公式 PECL 拡張パッケージ サイトのアドレス: http://pecl.php.net/package/zip

PHP のバージョンに対応するもの 圧縮パッケージ
Windows では、圧縮パッケージ内の php_zip.dll ファイルを PHP インストール ディレクトリの ext フォルダーに直接ドラッグ アンド ドロップできます
Linux システムは、PHP の 設定を変更する前にコンパイルする必要があります。ファイル

添付 PHP で Zip ファイルを操作するための基本機能

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
ログイン後にコピー


これらの事例を読んだ後、あなたは方法をマスターしたと思います。さらに興味深い情報については、PHP 中国語 Web サイトの他の関連記事に注目してください。

関連書籍:

二分探索の詳細な例とJavaアルゴリズムでの二分探索

JavaScriptの二分探索の詳細な説明_javascriptスキル

javascript配列(順序付けされた)リスト内の検索文字の位置を半分にする_javascriptヒント

以上がPHP を使用して圧縮パッケージ内の画像を解凍せずに表示する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート