PharData::convertToExecutable

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)

PharData::convertToExecutable — Convertit une archive tar/zip non-exĂ©cutable en une archive phar exĂ©cutable

Description

public function PharData::convertToExecutable(?int $format = null, ?int $compression = null, ?string $extension = null): ?Phar

Note: Cette méthode nécessite que la variable de configuration INI phar.readonly soit définie à 0 pour fonctionner avec les objets Phar. Sinon, une exception PharException sera lançée.

Cette mĂ©thode est utilisĂ©e pour convertir 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Ă©.

Liste de paramĂštres

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 Ă©craser l'extension de fichier par dĂ©faut de l'archive convertie. Notez que toutes 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.

Valeurs de retour

Cette méthode retourne un objet Phar en cas de succÚs, ou null en cas d'échec

Erreurs / Exceptions

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.

Historique

Version Description
8.0.0 format, compression, et localName sont désormais nullable.

Exemples

Exemple #1 Un exemple avec PharData::convertToExecutable()

Utilisons PharData::convertToExecutable() :

<?php
try {
$tarphar = new PharData('monphar.tar');
// le convertit au format de fichier phar
// notez que monphar.tar n'est *pas* effacé
$phar = $tarphar->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
}
?>

Voir aussi

add a note

User Contributed Notes

There are no user contributed notes for this page.