array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'it', ), 'this' => array ( 0 => 'phar.addfile.php', 1 => 'Phar::addFile', 2 => 'Add a file from the filesystem to the phar archive', ), 'up' => array ( 0 => 'class.phar.php', 1 => 'Phar', ), 'prev' => array ( 0 => 'phar.addemptydir.php', 1 => 'Phar::addEmptyDir', ), 'next' => array ( 0 => 'phar.addfromstring.php', 1 => 'Phar::addFromString', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'en', 'path' => 'reference/phar/Phar/addFile.xml', ), 'history' => array ( ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); contributors($setup); ?>
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
Phar::addFile — Add a file from the filesystem to the phar archive
Nota:
This method requires the php.ini setting
phar.readonly
to be set to0
in order to work for Phar objects. Otherwise, a PharException will be thrown.
With this method, any file or URL can be added to the phar archive. If
the optional second parameter localName
is a string,
the file will be stored in the archive with that name, otherwise the
file
parameter is used as the path to store within
the archive. URLs must have a localname or an exception is thrown.
This method is similar to ZipArchive::addFile().
filename
Full or relative path to a file on disk to be added to the phar archive.
localName
Path that the file will be stored in the archive.
no return value, exception is thrown on failure.
Versione | Descrizione |
---|---|
8.0.0 |
localName is now nullable.
|
Example #1 A Phar::addFile() example
<?php
try {
$a = new Phar('/path/to/phar.phar');
$a->addFile('/full/path/to/file');
// demonstrates how this file is stored
$b = $a['full/path/to/file']->getContent();
$a->addFile('/full/path/to/file', 'my/file.txt');
$c = $a['my/file.txt']->getContent();
// demonstrate URL usage
$a->addFile('http://www.example.com', 'example.html');
} catch (Exception $e) {
// handle errors here
}
?>
Nota: Phar::addFile(), Phar::addFromString() and Phar::offsetSet() save a new phar archive each time they are called. If performance is a concern, Phar::buildFromDirectory() or Phar::buildFromIterator() should be used instead.