(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
PharData::addFile — Añade un fichero del sistema de archivos al archivo tar/zip
Con este método, cualquier fichero o URL puede ser añadido al archivo tar/zip. Si
el segundo argumento opcional localname
es especificado,
el fichero será almacenado en el archivo con este nombre, de lo contrario el argumento
file
es utilizado como ruta hacia donde almacenar el fichero dentro de
el archivo. Las URLs deben tener un nombre local de lo contrario se lanza una excepción.
Este método es idéntico a ZipArchive::addFile().
filename
Ruta relativa o absoluta hacia un fichero del disco a añadir al archivo phar.
localName
Ruta hacia donde el fichero será almacenado dentro del archivo.
No se devuelve ningún valor, se lanza una excepción en caso de fallo.
Versión | Descripción |
---|---|
8.0.0 |
localName ahora es nullable.
|
Ejemplo #1 Un ejemplo con PharData::addFile()
<?php
try {
$a = new PharData('/ruta/al/archivo.tar');
$a->addFile('/ruta/completa/al/fichero');
// muestra cómo el fichero es almacenado
$b = $a['ruta/completa/al/fichero']->getContent();
$a->addFile('/ruta/completa/al/fichero', 'mi/fichero.txt');
$c = $a['mi/fichero.txt']->getContent();
// muestra el uso de URLs
$a->addFile('http://www.ejemplo.com', 'ejemplo.html');
} catch (Exception $e) {
// los errores son manejados aquí
}
?>
Nota: PharData::addFile(), PharData::addFromString() y PharData::offsetSet() registran un nuevo archivo phar cada vez que son llamadas. Si las prestaciones son una preocupación, PharData::buildFromDirectory() o PharData::buildFromIterator() deberían ser utilizadas en su lugar.