(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
PharData::addFile — Ajoute un fichier du système de fichiers à l'archive tar/zip
Avec cette méthode, n'importe quel fichier ou URL peut être ajouté à l'archive tar/zip. Si
le second paramètre optionnel localname
est spécifié,
le fichier sera stocké dans l'archive avec ce nom, sans quoi le paramètre
file
est utilisé comme chemin vers lequel stocker le fichier au sein de
l'archive. Les URL doivent avoir un nom local sans quoi une exception est levée.
Cette méthode est identique à ZipArchive::addFile().
filename
Chemin relatif ou absolu vers un fichier du disque à ajouter à l'archive phar.
localName
Chemin vers lequel le fichier sera stocké au sein de l'archive.
aucune valeur de retour, une exception est levée en cas d'échec.
Version | Description |
---|---|
8.0.0 |
localName est désormais nullable.
|
Exemple #1 Un exemple avec PharData::addFile()
<?php
try {
$a = new PharData('/chemin/vers/mon.tar');
$a->addFile('/chemin/complet/vers/fichier');
// montre comment le fichier est stocké
$b = $a['chemin/complet/vers/fichier']->getContent();
$a->addFile('/chemin/complet/vers/fichier', 'mon/fichier.txt');
$c = $a['mon/fichier.txt']->getContent();
// montre l'utilisation des URLs
$a->addFile('http://www.exemple.com', 'exemple.html');
} catch (Exception $e) {
// les erreurs sont traitées ici
}
?>
Note: PharData::addFile(), PharData::addFromString() et PharData::offsetSet() enregistre une nouvelle archive phar à chaque fois qu'elles sont appelées. Si les performances sont une préoccupation, PharData::buildFromDirectory() ou PharData::buildFromIterator() devraient être utilisé à la place.