(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
Phar::addFile — Añade un fichero del sistema de ficheros al archivo phar
Nota:
Este método requiere que la variable de configuración INI
phar.readonly
esté definida a0
para funcionar con los objetos Phar. De lo contrario, se lanzará una excepción PharException.
Mediante este método, cualquier fichero o URL puede ser añadido al archivo phar. Si
el segundo parámetro opcional localName
es un string,
el fichero será almacenado en el archivo con ese nombre, de lo contrario el parámetro
filename
se utiliza como ruta hacia donde almacenar el archivo.
Las URL deben ser locales, de lo contrario se lanza una excepción.
Este método es idéntico a ZipArchive::addFile().
filename
Ruta absoluta o relativa hacia un fichero del disco a añadir al archivo phar.
localName
Ruta donde el fichero será almacenado en el archivo.
No hay valor de retorno, 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 Phar::addFile()
<?php
try {
$a = new Phar('/ruta/al/phar.phar');
$a->addFile('/ruta/completa/al/fichero');
// demuestra 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();
// demuestra el uso de URL
$a->addFile('http://www.ejemplo.com', 'ejemplo.html');
} catch (Exception $e) {
// maneja los errores aquí
}
?>
Nota: Phar::addFile(), Phar::addFromString() y Phar::offsetSet() registran un nuevo archivo phar cada vez que son llamadas. Si las prestaciones son una preocupación, Phar::buildFromDirectory() o Phar::buildFromIterator() deberían ser utilizadas en su lugar.