私の Web サイトは Dreamhost でホストされており、そこでは PHP と共に zlib のみがインストールされます。ここで説明されているように、この拡張機能の共通メソッドを使用してファイルを解凍する方法がわかりませんでした: http://php.net/zlib
PHPで拡張子がzlibの.gzまたは.gzipファイルを解凍する方法を知っている人はいますか? それは私の命を救うでしょう!
私の Web サイトは Dreamhost でホストされており、そこでは PHP と共に zlib のみがインストールされます。ここで説明されているように、この拡張機能の共通メソッドを使用してファイルを解凍する方法がわかりませんでした: http://php.net/zlib
PHPで拡張子がzlibの.gzまたは.gzipファイルを解凍する方法を知っている人はいますか? それは私の命を救うでしょう!
zlib の PHP バインディングの紹介に書かれているとおり:
バージョン 4.0.4 では .gz ファイル用の fopen-wrapper が導入されたため、特別な zlib: URL を使用して、ファイル名またはパスの前に zlib を付けた場合、通常の f*() ファイル アクセス関数を使用して透過的に圧縮ファイルにアクセスできます。 fopen() を呼び出すとき。[...] PHP 4.3.0 では、「:」文字を含むファイル名のあいまいさを防ぐために、zlib: が compress.zlib:// に変更されました。
単にfopen
あなたのファイルをcompress.zlib://
先頭に追加して、通常どおり使用してください。
マニュアルはかなり良い例を示しています。
GZip と Deflate については、RFC 1952 (GZip)とRFC 1950 (Deflate)で説明されています。GZip は、そこに記述されたヘッダーを使用した Deflate であるため、そのヘッダーを解析して zLib ストリームの場所を検出し、zLib ルーチンで解凍できます。