PHP Conference Nagoya 2025

PharData::buildFromDirectory

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)

PharData::buildFromDirectoryConstruir un archivo tar/zip desde los ficheros de un directorio

Descripción

public Phar::buildFromDirectory(string $base_dir, string $regex = ?): array

Rellena un archivo phar con el contenido de un directorio. El segundo parámtro opcional es una expresión regular (pcre) que se utiliza para excluir ficheros. Cualquier nombre de fichero que coincida con la expresión regular será incluido, todos los demás serán excluidos. Para un control más exhaustivo, use PharData::buildFromIterator().

Parámetros

base_dir

La ruta completa o relativa al directorio que contiene todos los ficheros a añadir al archivo.

regex

Una expresión regular de pcre opcional que se usa para filtrar la lista de ficheros. Solamente las rutas de fichero que coincidan con la expresión regular serán incluidas en el archivo.

Valores devueltos

Phar::buildFromDirectory() devuelve un array asociativo que que mapea la ruta interna del fichero a la ruta completa del mismo en el sistema de ficheros.

Errores/Excepciones

Este método lanza una excepción de tipo BadMethodCallException cuando no puede instanciar los iteradores intermos del directorio, o una excepción de tipo PharException si hubo errores al guardar el archivo phar.

Ejemplos

Ejemplo #1 Un ejemplo de PharData::buildFromDirectory()

<?php
$phar
= new PharData('proyecto.tar');
// añadir todos los ficheros del proyecto
$phar->buildFromDirectory(dirname(__FILE__) . '/proyecto');

$phar2 = new PharData('proyecto2.zip');
// añadir todos los ficheros del, incluir solamente los ficheros php
$phar2->buildFromDirectory(dirname(__FILE__) . '/proyecto', '/\.php$/');
?>

Ver también

add a note

User Contributed Notes 1 note

up
0
dan
5 years ago
buildFromDirectory won't add empty subdirectories on 7.2
To Top