Phar::stopBuffering
Phar::unlinkArchive
Phar
PHP Manual

# Phar::uncompressAllFiles

(PECL phar:1.0.0-1.2.1)

Phar::uncompressAllFiles — 現在の Phar アーカイブ内のすべてのファイルを展開する

### 説明

bool Phar::uncompressAllFiles ( void )

> 注意: このメソッドは、phar 拡張モジュールバージョン 2.0.0 で削除されました。 今後は Phar::compress()、 Phar::decompress()、Phar::compressFiles() および Phar::decompressFiles() をご利用ください。

> 注意: このメソッドは、php.ini の phar.readonly が 0 でないと Phar オブジェクトで動作しません。それ以外の場合は PharException がスローされます。

このメソッドは、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)

### 参考

- PharFileInfo::getCompressedSize()
- PharFileInfo::isCompressedBZIP2()
- PharFileInfo::isCompressed()
- PharFileInfo::isCompressedGZ()
- PharFileInfo::setCompressedBZIP2()
- PharFileInfo::setUncompressed()
- PharFileInfo::setCompressedGZ()
- Phar::canCompress()
- Phar::isCompressed()
- Phar::compressAllFilesBZIP2()
- Phar::compressAllFilesGZ()
- Phar::getSupportedCompression()

Phar::stopBuffering
Phar::unlinkArchive
Phar
PHP Manual