そのまんま!
Phar->uncompressAllFiles
(no version information, might be only in CVS)
Phar->uncompressAllFiles -- 現在の Phar アーカイブ内のすべてのファイルを展開する
説明
bool
Phar->uncompressAllFiles ( void )
このメソッドは、Phar アーカイブ内のすべてのファイルを展開します。
gzip で圧縮されているファイルが存在する場合は、それを展開するために
zlib 拡張モジュールが有効でなければなりません。
また、bzip2 で圧縮されているファイルが存在する場合は、それを展開するために
bzip2 拡張モジュールが有効でなければなりません。
この関数は phar の内容を変更するので、使用するには INI 設定
phar.readonly
が off になっていなければなりません。
エラー / 例外
INI 設定 phar.readonly
が on の場合、bzip2 で圧縮されたファイルがあるのに
bzip2 拡張モジュールが使用できない場合、
あるいは gzip で圧縮されたファイルがあるのに
zlib 拡張モジュールが使用できない場合に
BadMethodCallException をスローします。
例
例 1. Phar->uncompressAllFiles() の例
<?php try { $p = new Phar('/path/to/my.phar', 0, 'my.phar'); $p['myfile.txt'] = 'hi'; $p['myfile2.txt'] = 'hi'; $p->compressAllFilesGZ(); foreach ($p as $file) { var_dump($file->getFileName()); var_dump($file->isCompressed()); var_dump($file->isCompressedBZIP2()); var_dump($file->isCompressedGZ()); } $p->uncompressAllFiles(); foreach ($p as $file) { var_dump($file->getFileName()); var_dump($file->isCompressed()); var_dump($file->isCompressedBZIP2()); var_dump($file->isCompressedGZ()); } } catch (Exception $e) { echo 'my.phar での書き込み操作に失敗しました: ', $e; } ?>
|
上の例の出力は以下となります。 string(10) "myfile.txt"
bool(true)
bool(false)
bool(true)
string(11) "myfile2.txt"
bool(true)
bool(false)
bool(true)
string(10) "myfile.txt"
bool(false)
bool(false)
bool(false)
string(11) "myfile2.txt"
bool(false)
bool(false)
bool(false) |
|