# La classe Phar

(PHP 5 >= 5.3.0, PHP 7, PECL phar >= 1.0.0)

## Introduction

La classe Phar fournit une interface de haut niveau pour accéder et créer des archives phar.

## Synopsis de la classe

Phar extends RecursiveDirectoryIterator implements Countable , ArrayAccess {
/* Constants héritées */
const integer FilesystemIterator::CURRENT_AS_PATHNAME = 32 ;
const integer FilesystemIterator::CURRENT_AS_FILEINFO = 0 ;
const integer FilesystemIterator::CURRENT_AS_SELF = 16 ;
const integer FilesystemIterator::CURRENT_MODE_MASK = 240 ;
const integer FilesystemIterator::KEY_AS_PATHNAME = 0 ;
const integer FilesystemIterator::KEY_AS_FILENAME = 256 ;
const integer FilesystemIterator::FOLLOW_SYMLINKS = 512 ;
const integer FilesystemIterator::KEY_MODE_MASK = 3840 ;
const integer FilesystemIterator::NEW_CURRENT_AND_KEY = 256 ;
const integer FilesystemIterator::SKIP_DOTS = 4096 ;
const integer FilesystemIterator::UNIX_PATHS = 8192 ;
/* Méthodes */
public addEmptyDir ( string `$dirname` ) : void
public addFile ( string `$file` [, string `$localname` ] ) : void
public addFromString ( string `$localname` , string `$contents` ) : void
final public static apiVersion ( void ) : string
public buildFromDirectory ( string `$base_dir` [, string `$regex` ] ) : array
public buildFromIterator ( Iterator `$iter` [, string `$base_directory` ] ) : array
final public static canCompress ([ int `$type` = 0 ] ) : bool
final public static canWrite ( void ) : bool
public compress ( int `$compression` [, string `$extension` ] ) : object
public compressAllFilesBZIP2 ( void ) : bool
public compressAllFilesGZ ( void ) : bool
public compressFiles ( int `$compression` ) : void
public __construct ( string `$fname` [, int `$flags` [, string `$alias` ]] )
public convertToData ([ int `$format` = 9021976 [, int `$compression` = 9021976 [, string `$extension` ]]] ) : PharData
public convertToExecutable ([ int `$format` = 9021976 [, int `$compression` = 9021976 [, string `$extension` ]]] ) : Phar
public copy ( string `$oldfile` , string `$newfile` ) : bool
public count ( void ) : int
final public static createDefaultStub ([ string `$indexfile` [, string `$webindexfile` ]] ) : string
public decompress ([ string `$extension` ] ) : object
public decompressFiles ( void ) : bool
public delMetadata ( void ) : bool
public delete ( string `$entry` ) : bool
public extractTo ( string `$pathto` [, string|array `$files` [, bool `$overwrite` = `FALSE` ]] ) : bool
public getAlias ( void ) : string
public getMetadata ( void ) : mixed
public getModified ( void ) : bool
public getPath ( void ) : string
public getSignature ( void ) : array
public getStub ( void ) : string
final public static getSupportedCompression ( void ) : array
final public static getSupportedSignatures ( void ) : array
public getVersion ( void ) : string
public hasMetadata ( void ) : bool
final public static interceptFileFuncs ( void ) : void
public isBuffering ( void ) : bool
public isCompressed ( void ) : mixed
public isFileFormat ( int `$format` ) : bool
final public static isValidPharFilename ( string `$filename` [, bool `$executable` = `TRUE` ] ) : bool
public isWritable ( void ) : bool
final public static loadPhar ( string `$filename` [, string `$alias` ] ) : bool
final public static mapPhar ([ string `$alias` [, int `$dataoffset` = 0 ]] ) : bool
final public static mount ( string `$pharpath` , string `$externalpath` ) : void
final public static mungServer ( array `$munglist` ) : void
public offsetExists ( string `$offset` ) : bool
public offsetGet ( string `$offset` ) : int
public offsetSet ( string `$offset` , string `$value` ) : void
public offsetUnset ( string `$offset` ) : bool
final public static running ([ bool `$retphar` = `TRUE` ] ) : string
public setAlias ( string `$alias` ) : bool
public setDefaultStub ([ string `$index` [, string `$webindex` ]] ) : bool
public setMetadata ( mixed `$metadata` ) : void
public setSignatureAlgorithm ( int `$sigtype` [, string `$privatekey` ] ) : void
public setStub ( string `$stub` [, int `$len` = -1 ] ) : bool
public startBuffering ( void ) : void
public stopBuffering ( void ) : void
public uncompressAllFiles ( void ) : bool
final public static unlinkArchive ( string `$archive` ) : bool
final public static webPhar ([ string `$alias` [, string `$index` = "index.php" [, string `$f404` [, array `$mimetypes` [, callable `$rewrites` ]]]]] ) : void
}

## Sommaire

- Phar::addEmptyDir — Ajoute un répertoire vide à l'archive phar
- Phar::addFile — Ajoute un fichier du système de fichiers à l'archive phar
- Phar::addFromString — Ajoute un fichier depuis une chaîne de caractère à l'archive phar
- Phar::apiVersion — Retourne la version de l'API
- Phar::buildFromDirectory — Construit une archive phar à partir des fichiers d'un répertoire
- Phar::buildFromIterator — Construit une archive phar à partir d'un itérateur
- Phar::canCompress — Détermine si l'extension phar supporte une la compression en utilisant soit zip soit bzip2
- Phar::canWrite — Détermine si l'extension phar supporte la création et l'écriture des phars
- Phar::compress — Compresse l'archive Phar complète en utilisant la compression Gzip ou Bzip2
- Phar::compressAllFilesBZIP2 — Compresse tous les fichiers de l'archive Phar courante en utilisant la compression Bzip2
- Phar::compressAllFilesGZ — Compresse tous les fichiers de l'archive Phar courante en utilisant la compression Gzip
- Phar::compressFiles — Compresse tous les fichiers de l'archive Phar courante'
- Phar::__construct — Construit un objet d'archive Phar
- Phar::convertToData — Convertit une archive phar en un fichier non-exécutable
- Phar::convertToExecutable — Convertit une archive phar vers un autre format de fichier d'archive phar exécutable
- Phar::copy — Copie un fichier appartenant à une archive vers un autre fichier de la même archive
- Phar::count — Retourne le nombre d'entrées (fichiers) dans l'archive Phar
- Phar::createDefaultStub — Crée un conteneur de chargement d'une archive Phar
- Phar::decompress — Décompresse l'archive tar complète
- Phar::decompressFiles — Décompresse tous les fichiers de l'archive Phar courante
- Phar::delMetadata — Efface les méta-données globales du phar
- Phar::delete — Efface un fichier au sein d'une archive phar
- Phar::extractTo — Extrait le contenu d'une archive phar vers un répertoire
- Phar::getAlias — Récupère l'alias pour Phar
- Phar::getMetadata — Retourne les méta-données de l'archive phar
- Phar::getModified — Indique si le fichier phar a été modifié
- Phar::getPath — Récupère le chemin absolue de l'archive Phar sur le disque
- Phar::getSignature — Retourne la signature MD5/SHA1/SHA256/SHA512 d'une archive Phar
- Phar::getStub — Retourne le chargeur PHP ou le conteneur de chargement d'une archive Phar
- Phar::getSupportedCompression — Retourne un tableau des algorithmes de compression supportés
- Phar::getSupportedSignatures — Retourne un tableau des types de signature supportés
- Phar::getVersion — Retourne les informations de version de l'archive Phar
- Phar::hasMetadata — Détermine si le phar a ou non des méta-données
- Phar::interceptFileFuncs — Informe phar qu'il doit intercepter les fonctions de fichiers
- Phar::isBuffering — Détermine si les opérations d'écriture du Phar sont mises en tampons ou sont directement inscrites sur le disque
- Phar::isCompressed — Retourne Phar::GZ ou PHAR::BZ2 si l'archive entière est compressée (.tar.gz/tar.bz, etc)
- Phar::isFileFormat — Retourne TRUE si l'archive phar est basée sur le formats de fichier tar/phar/zip selon le paramètre
- Phar::isValidPharFilename — Détermine si le nom de fichier spécifié est un nom de fichier valide pour une archive phar
- Phar::isWritable — Retourne TRUE si l'archive phar peut être modifiée
- Phar::loadPhar — Charge n'importe quelle archive phar avec un alias
- Phar::mapPhar — Lit le phar exécuté et charge son manifeste
- Phar::mount — Monte un chemin ou un fichier externe à un emplacement virtuel au sein de l'archive phar
- Phar::mungServer — Définit une liste de maximum 4 variables $_SERVER qui doivent être modifiées lors de l'exécution
- Phar::offsetExists — Détermine si un fichier existe dans le phar
- Phar::offsetGet — Obtient un objet PharFileInfo à partir d'un fichier
- Phar::offsetSet — Met le contenu d'un fichier interne à l'archive à l'identique du contenu d'un fichier externe
- Phar::offsetUnset — Efface un fichier d'un phar
- Phar::running — Retourne le chemin complet sur le disque ou l'URL phar complète de l'archive phar couramment exécutée
- Phar::setAlias — Fixe l'alias de l'archive Phar
- Phar::setDefaultStub — Utilisé pour fixer le chargeur PHP ou le conteneur de chargement d'une archive Phar en tant que chargeur par défaut
- Phar::setMetadata — Fixe les métadonnées de l'archive phar
- Phar::setSignatureAlgorithm — Fixe et applique l'algorithme de signature d'un phar
- Phar::setStub — Utilisé pour spécifier le chargeur PHP ou le conteneur de chargement d'une archive Phar
- Phar::startBuffering — Démarre la mise en tampon de écritures Phar, ne modifie pas l'objet Phar sur le disque
- Phar::stopBuffering — Arrête la mise en tampon des écritures Phar et provoque l'écriture que le disque
- Phar::uncompressAllFiles — Décompresse tous les fichiers de l'archive Phar courante
- Phar::unlinkArchive — Efface complètement une archive phar du disque et de la mémoire
- Phar::webPhar — mapPhar pour les phars orientés web. Contrôleur pour les applications web