(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.
patternUn patrón glob()contra el cual se hará la correspondencia con los ficheros.
flagsUna máscara de un bit de marcas glob().
optionsUn 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();
}
?>