PharData::convertToExecutable
Convertit une archive tar/zip non-exécutable en une archive phar exécutable
&reftitle.description;
public PharnullPharData::convertToExecutable
intnullformat&null;
intnullcompression&null;
stringnullextension&null;
&phar.write;
Cette méthode est utilisée pour convertit une archive tar ou zip non-exécutable en une
archive phar exécutable. N'importe lequel des trois formats de fichier
(phar, tar ou zip) peut être utilisé et la compression de l'archive complète est aussi possible.
Si aucun changement n'est demandé, cette méthode soulève une exception BadMethodCallException.
En cas de succès, cette méthode crée une nouvelle archive sur le disque et retourne un objet
Phar. L'ancienne archive n'est pas effacée du disque, ceci devant
être fait manuellement une fois le traitement terminé.
&reftitle.parameters;
format
Le format doit être Phar::PHAR, Phar::TAR
ou Phar::ZIP. S'il vaut &null;, le format de fichier actuel sera conservé.
compression
La compression doit être Phar::NONE pour éviter la compression de l'archive
complète, Phar::GZ pour la compression basée sur zlib, et
Phar::BZ2 pour la compression basée sur bzip.
extension
Ce paramètre est utilisé pour écrase l'extension de fichier par défaut de l'archive convertie. Notez
que toute les archives basées sur tar et sur zip doivent contenir
.phar dans leur extension de fichier pour pouvoir être traitées comme des archives
phar.
En cas de conversion vers une archive basée sur phar, les extensions par défaut sont
.phar, .phar.gz ou .phar.bz2
selon la compression spécifiée. Pour les archives phar basées sur tar, les extensions par défaut
sont .phar.tar, .phar.tar.gz
et .phar.tar.bz2. Pour les archives phar basées sur zip, l'extension par
défaut est .phar.zip.
&reftitle.returnvalues;
Cette méthode retourne un objet Phar en cas de succès,
ou &null; en cas d'échec
&reftitle.errors;
Cette méthode soulève une exception BadMethodCallException
quand elle est incapable de compresser, quand une méthode de compression inconnue a été
spécifiée, quand l'archive demandée est mise en tampon avec
Phar::startBuffering et qu'elle n'a pas été conclue avec
Phar::stopBuffering, soulève une exception
UnexpectedValueException si le support en écriture est désactivé,
et soulève une exception PharException si des problèmes ont été rencontrés
lors de la création du phar.
&reftitle.changelog;
&Version;
&Description;
8.0.0
format, compression,
et localName sont désormais nullable.
&reftitle.examples;
Un exemple avec PharData::convertToExecutable
Utilisons PharData::convertToExecutable() :
convertToExecutable(Phar::PHAR); // crée monphar.phar
$phar->setStub($phar->createDefaultStub('cli.php', 'web/index.php'));
// crée monphar.phar.tgz
$compressed = $tarphar->convertToExecutable(Phar::TAR, Phar::GZ, '.phar.tgz');
} catch (Exception $e) {
// les erreurs sont traitées ici
}
?>
]]>
&reftitle.seealso;
Phar::convertToExecutable
Phar::convertToData
PharData::convertToData