PharData::extractTo
(PHP 5 >= 5.3.0, PHP 7, PECL phar >= 2.0.0)
PharData::extractTo — tar/zip アーカイブの内容をディレクトリに展開する
説明
PharData::extractTo
( string $pathto
[, string|array|null $files
= null
[, bool $overwrite
= false
]] ) : bool
tar/zip アーカイブ内のすべてのファイルをディスクに展開します。
展開されたファイルやディレクトリは、アーカイブに保存されたときのパーミッションを維持しています。
オプションのパラメータを使用すると、どのファイルを展開するかを制御したり
既存のファイルを上書きするかどうかを指定したりすることができます。
2 番目のパラメータ files
には、
展開したいファイルやディレクトリの名前、あるいはその配列を指定します。
デフォルトでは、このメソッドは既存のファイルを上書きしません。
3 番目のパラメータを true にすると既存のファイルを上書きさせることができます。
このメソッドは ZipArchive::extractTo() と同じようなものです。
パラメータ
pathto
- 指定した
files
の展開先のパス。 files
- 展開したいファイル名/ディレクトリ名、あるいはその配列。
overwrite
true
にすると既存のファイルを上書きします。
返り値
成功した場合に true
を返します。
しかし、例外がスローされているかどうかを確認したうえで
例外がなければ成功とみなすほうがいいでしょう。
例
例1 PharData::extractTo() の例
<?phptry { $phar = new PharData('myphar.tar'); $phar->extractTo('/full/path'); // すべてのファイルを展開します $phar->extractTo('/another/path', 'file.txt'); // file.txt のみを展開します $phar->extractTo('/this/path', array('file1.txt', 'file2.txt')); // 2 つのファイルだけを展開します $phar->extractTo('/third/path', null, true); // すべてのファイルを展開し、上書きします} catch (Exception $e) { // エラー処理}?>