(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.readonly
do php.ini seja definida como0
para 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().
filename
Caminho completo ou relativo para um arquivo no disco a ser adicionado ao arquivo phar.
localName
Caminho 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.