Phar
PHP Manual

Phar::extractTo

(Unknown)

Phar::extractToExtrait le contenu d'une archive phar vers un répertoire

Description

public bool Phar::extractTo ( string $pathto [, string|array $files [, bool $overwrite = false ]] )

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.

Extrait tous les fichiers d'une archive phar vers le disque. Les fichiers et les dossiers extraits conservent les permissions à l'identique de l'intérieur de l'archive. Les paramètres optionnels permettent un éventuel contrôle sur quel fichier est extrait et si des fichiers déjà existants sur le disque peuvent être écrasés. Le second paramètre files peut être soit le nom d'un fichier ou d'un répertoire, soit un tableau de noms de fichiers et de répertoires à extraire. Par défaut, cette méthode n'écrasant pas les fichiers existants, le troisième paramètre peut être passé à TRUE pour activer l'écrasement de fichiers. Cette méthode est identique à ZipArchive::extractTo().

Liste de paramètres

pathto

Chemin du fichier à effacer au sein de l'archive.

files

Le nom d'un fichier ou d'un répertoire ou un tableau de fichiers/répertoires à extraire

overwrite

Le passer à TRUE pour activer l'écrasement des fichiers existants

Valeurs de retour

retourne TRUE en cas de succès, mais il est plus sûr de vérifier si des exceptions sont levées, et de considérer que tout s'est bien passé si aucune n'est levée.

Erreurs / Exceptions

Lève une exception PharException si des erreurs apparaissent pendant l'écriture sur le disque.

Exemples

Exemple #1 Un exemple avec Phar::extractTo()

<?php
try {
    
$phar = new Phar('monphar.phar');
    
$phar->extractTo('/chemin/complet'); // extrait tous les fichiers
    
$phar->extractTo('/autre/chemin''fichier.txt'); // extrait seulement fichier.txt
    
$phar->extractTo('/ce/chemin',
        array(
'fichier1.txt''fichier2.txt')); // extrait seulement 2 fichiers
    
$phar->extractTo('/troisieme/chemin'nulltrue); // extrait tous les fichiers, en écrasant
} catch (Exception $e) {
    
// traite les erreurs
}
?>

Voir aussi


Phar
PHP Manual