(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL zip >= 1.9.0)
ZipArchive::addPattern — Añade ficheros de un directorio a partir de un patrón PCRE
$pattern
, string $path
= ".", array $options
= []): array|false
Añade ficheros de un directorio que coinciden con la expresión regular pattern
.
La operación no es recursiva. Únicamente se hará la correspondencia del patrón con el nombre del fichero.
pattern
Un patrón PCRE contra el cual se realizará la correspondencia.
path
El directorio que será escaneado. Por defecto es el directorio de trabajo actual.
options
Un array asociativo de opciones aceptadas por ZipArchive::addGlob().
Un array de archivos añadidos en caso de éxito o false
en caso de error
Ejemplo #1 Ejemplo con ZipArchive::addPattern()
Añadir todos los scripts y ficheros de texto php del directorio actual
<?php
$zip = new ZipArchive();
$ret = $zip->open('application.zip', ZipArchive::CREATE | ZipArchive::OVERWRITE);
if ($ret !== TRUE) {
printf('Erróneo con código %d', $ret);
} else {
$directory = realpath('.');
$options = array('add_path' => 'sources/', 'remove_path' => $directory);
$zip->addPattern('/\.(?:php|txt)$/', $directory, $options);
$zip->close();
}
?>