ZipArchive::extractTo

(PHP 5 >= 5.2.0, PHP 7, PHP 8, PECL zip >= 1.1.0)

ZipArchive::extractToExtraer el contenido del archivo

Descripción

public ZipArchive::extractTo(string $pathto, array|string|null $files = null): bool

Extrae el archivo completo o los ficheros dados en la ruta que se especifique.

Advertencia

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().

Por razones de seguridad, los permisos originales no se restauran. Para ver un ejemplo de cómo restaurarlos, consulte el ejemplo de código en la página de ZipArchive::getExternalAttributesIndex().

Parámetros

pathto

Destino en donde extraer los ficheros.

files

Las entradas a extraer. Acepta tanto un solo nombre o un array de nombres.

Valores devueltos

Devuelve true en caso de éxito o false en caso de error.

Ejemplos

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';
}
?>

Notas

Nota:

Los sistemas de archivos NTFS de Windows no admiten algunos caracteres en nombres de archivos, a saber: <|>*?":. Tampoco se admiten nombres de archivo con un punto final. A diferencia de algunas herramientas de extracción, este método no reemplaza estoscaracteres con un guion bajo, sino que falla al intentar extraer tales archivos.