(PHP 5 >= 5.2.0, PHP 7, PHP 8, PECL zip >= 1.1.0)
ZipArchive::extractTo — Extraer el contenido del archivo
Extrae el archivo completo o los ficheros dados en la ruta que se especifique.
Los permisos por omisión para los archivos y directorios extraídos dan el más amplio acceso posible. Esto se puede restringir estableciendo la umask actual, que se puede cambiar usando umask().
pathto
Destino en donde extraer los ficheros.
files
Las entradas a extraer. Acepta tanto un solo nombre o un array de nombres.
Ejemplo #1 Extraer todas las entradas
<?php
$zip = new ZipArchive;
if ($zip->open('test.zip') === TRUE) {
$zip->extractTo('/my/destination/dir/');
$zip->close();
echo 'ok';
} else {
echo 'failed';
}
?>
Ejemplo #2 Extraer dos entradas
<?php
$zip = new ZipArchive;
$res = $zip->open('test_im.zip');
if ($res === TRUE) {
$zip->extractTo('/my/destination/dir/', array('pear_item.gif', 'testfromfile.php'));
$zip->close();
echo 'ok';
} else {
echo 'failed';
}
?>
Nota:
Windows NTFS file systems do not support some characters in filenames, namely
<|>*?":
. Filenames with a trailing dot are not supported either. Contrary to some extraction tools, this method does not replace these characters with an underscore, but instead fails to extract such files.