Ответ 1
С PHP 5.3.0 вам не нужно использовать Archive_Tar
.
Существует новый класс для работы с tar-архивом: Класс PharData.
Чтобы извлечь архив (используя PharData::extractTo()
, который работает как ZipArchive::extractTo()
):
try {
$phar = new PharData('myphar.tar');
$phar->extractTo('/full/path'); // extract all files
} catch (Exception $e) {
// handle errors
}
И если у вас есть архив tar.gz, просто распакуйте его перед извлечением (используя PharData::decompress()
):
// decompress from gz
$p = new PharData('/path/to/my.tar.gz');
$p->decompress(); // creates /path/to/my.tar
// unarchive from the tar
$phar = new PharData('/path/to/my.tar');
$phar->extractTo('/full/path');