(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
Phar::addFile — Adiciona um arquivo do sistema de arquivos ao arquivo phar
Nota:
Este método requer que a configuração
phar.readonlydo php.ini seja definida como0para funcionar com objetos Phar. Caso contrário, uma exceção PharException será lançada.
Com este método, qualquer arquivo ou URL pode ser adicionado ao arquivo phar. Se
o segundo parâmetro opcional localName for uma string,
o arquivo será armazenado no arquivo com esse nome; caso contrário, o
parâmetro file será usado como o caminho para armazenar
o arquivo. URLs devem ter um nome local ou uma exceção será lançada.
Este método é semelhante a ZipArchive::addFile().
filenameCaminho completo ou relativo para um arquivo no disco a ser adicionado ao arquivo phar.
localNameCaminho onde o arquivo será armazenado no arquivo compactado.
Nenhum valor de retorno, exceção é lançada em caso de falha.
| Versão | Descrição |
|---|---|
| 8.0.0 |
localName agora é anulável.
|
Exemplo #1 Um exemplo de Phar::addFile()
<?php
try {
$a = new Phar('/path/to/phar.phar');
$a->addFile('/full/path/to/file');
// demonstra como este arquivo é armazenado
$b = $a['full/path/to/file']->getContent();
$a->addFile('/full/path/to/file', 'my/file.txt');
$c = $a['my/file.txt']->getContent();
// demonstra o uso de URL
$a->addFile('http://www.example.com', 'example.html');
} catch (Exception $e) {
// manipula erros aqui
}
?>Nota: Phar::addFile(), Phar::addFromString() e Phar::offsetSet() salvam um novo arquivo phar cada vez que são chamadas. Se o desempenho for uma preocupação, Phar::buildFromDirectory() ou Phar::buildFromIterator() devem ser usadas.