(PHP 5 >= 5.3.0, PHP 7, PECL zip >= 1.9.0)
ZipArchive::addGlob — Añadir ficheros de un directorio mediante un patrón glob
$pattern
[, int $flags
= 0
[, array $options
= array()
]] ) : bool
Añade ficheros de un directorio que corresponde con el patrón global pattern
.
pattern
Un patrón glob()contra el cual se hará la correspondencia con los ficheros.
flags
Una máscara de un bit de marcas glob().
options
Un array asociativo de opciones. Las opciones disponibles son:
"add_path"
Prefijo a indicar cuando se traduce la ruta de acceso del fichero dentro del archivo. Esta traducción se aplica después de cualquier operación de eliminación definida por las opciones "remove_path" o "remove_all_path" .
"remove_path"
Prefijo para eliminar la ruta de acceso de los ficheros antes de añadirlos al archivo.
"remove_all_path"
TRUE
para utilizar únicamente el nombre del fichero y añadirlo a la raíz del archivo.
Devuelve TRUE
en caso de éxito o FALSE
en caso de error.
Ejemplo #1 Ejemplo con ZipArchive::addGlob()
Añadir todos los ficheros de scripts y texto php del directorio de trabajo actual
<?php
$zip = new ZipArchive();
$ret = $zip->open('application.zip', ZipArchive::OVERWRITE);
if ($ret !== TRUE) {
printf('Erróneo con el código %d', $ret);
} else {
$options = array('add_path' => 'sources/', 'remove_all_path' => TRUE);
$zip->addGlob('*.{php,txt}', GLOB_BRACE, $options);
$zip->close();
}
?>