# La clase Phar

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

## Introducción

La clase Phar proporciona una interfaz de alto nivel para el acceso y la creación de archivos phar.

## Sinopsis de la Clase

class Phar extends RecursiveDirectoryIterator implements Countable, ArrayAccess {
/* Métodos */
public addEmptyDir(string `$dirname`): void
public addFile(string `$file`, string `$localname` = ?): void
public addFromString(string `$localname`, string `$contents`): void
final public static apiVersion(): 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(): bool
public compress(int `$compression`, string `$extension` = ?): object
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(): int
final public static createDefaultStub(string `$indexfile` = ?, string `$webindexfile` = ?): string
public decompress(string `$extension` = ?): object
public decompressFiles(): bool
public delMetadata(): bool
public delete(string `$entry`): bool
public extractTo(string `$pathto`, string|array `$files` = ?, bool `$overwrite` = false): bool
public getAlias(): ?string
public getMetadata(): mixed
public getModified(): bool
public getPath(): string
public getSignature(): array
public getStub(): string
final public static getSupportedCompression(): array
final public static getSupportedSignatures(): array
public getVersion(): string
public hasMetadata(): bool
final public static interceptFileFuncs(): void
public isBuffering(): bool
public isCompressed(): mixed
public isFileFormat(int `$format`): bool
final public static isValidPharFilename(string `$filename`, bool `$executable` = true): bool
public isWritable(): 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
public stopBuffering(): void
final public static unlinkArchive(string `$archive`): bool
final public static webPhar(
string `$alias` = ?,
string `$index` = "index.php",
string `$f404` = ?,
array `$mimetypes` = ?,
callable `$rewrites` = ?
): void
}

## Tabla de contenidos

- Phar::addEmptyDir — Añadir un directorio vacío al archvo phar
- Phar::addFile — Añadir un fichero desde el sistema de ficheros al archivo phar
- Phar::addFromString — Añadir un fichero desde un string al archivo phar
- Phar::apiVersion — Devolver la versión de la API
- Phar::buildFromDirectory — Construir un archivo phar desde los ficheros de un directorio
- Phar::buildFromIterator — Construir un archivo phar desde un iterador
- Phar::canCompress — Devuelve si la extensión phar soporta la compresión usando zlib o bzip2
- Phar::canWrite — Devolver si la extensión phar soporta la escritura y creación de archivos phar
- Phar::compress — Comprimir el archivo Phar entero usando la compresión Gzip o Bzip2
- Phar::compressFiles — Comprime todos los ficheros del archivo Phar actual
- Phar::__construct — Construir un objeto de archivo Phar
- Phar::convertToData — Convertir un archivo phar en un fichero tar o zip no ejecutable
- Phar::convertToExecutable — Convertir un archivo phar en otro formato de archivo phar ejecutable
- Phar::copy — Copiar un fichero interno de un archivo phar a otro fichero nuevo dentro del phar
- Phar::count — Devuelve el número de entradas (ficheros) en el archivo Phar
- Phar::createDefaultStub — Crear una rutina de interoperabilidad específica del formato de fichero phar
- Phar::decompress — Descomprimir un archivo Phar entero
- Phar::decompressFiles — Descomprimir todos los ficheros del archivo Phar actual
- Phar::delMetadata — Eliminar la metainformación global del phar
- Phar::delete — Borrar un fichero dentro de un archivo phar
- Phar::__destruct — Destructs a Phar archive object
- Phar::extractTo — Extraer el contenido de un archivo phar a un directorio
- Phar::getAlias — Get the alias for Phar
- Phar::getMetadata — Devolver la metainformación de un archivo phar
- Phar::getModified — Devolver si el phar fue modificado
- Phar::getPath — Get the real path to the Phar archive on disk
- Phar::getSignature — Devolver la firma MD5/SHA1/SHA256/SHA512/OpenSSL de un archivo Phar
- Phar::getStub — Devolver el cargador de PHP o la rutina de interoperabilidad de un archivo Phar
- Phar::getSupportedCompression — Devolver un array de los algoritmos de compresión soportados
- Phar::getSupportedSignatures — Devolver un array con los tipos de firmas soportados
- Phar::getVersion — Devolver información de la versión del archivo Phar
- Phar::hasMetadata — Devolver si el phar tiene metainformación global
- Phar::interceptFileFuncs — Ordenar a phar interceptar fopen, file_get_contents, opendir, y todas las funciones relacionadas con estadísticas
- Phar::isBuffering — Determinar si las operaciones de escritura de Phar está siendo almacenadas en buffer, o están siendo volcadas directamente al disco
- Phar::isCompressed — Devuelve Phar::GZ oPHAR::BZ2 si el archivo phar entero está comprimido (.tar.gz/tar.bz, etc.)
- Phar::isFileFormat — Devolver true si el archivo phar está basado en el formato de fichero tar/phar/zip dependiendo del parámetro
- Phar::isValidPharFilename — Devolver si el nombre de fichero dado es un nombre de fichero phar válido
- Phar::isWritable — Devolver si el archivo phar se puede modificar
- Phar::loadPhar — Cargar cualquier archivo phar con un alias
- Phar::mapPhar — Leer el fichero (un phar) que está en ejecución y registrar su manifiesto
- Phar::mount — Montar un fichero o ruta externos en una ubicación virtual dentro de un archivo phar
- Phar::mungServer — Definir una lista de hasta 4 variables $_SERVER que debería ser modificadas para la ejecución
- Phar::offsetExists — Determina si un fichero existe en un phar
- Phar::offsetGet — Obtener un objeto de la clase PharFileInfo para un fichero específico
- Phar::offsetSet — Establecer el contenido de un fichero interno a aquel de un fichero externo
- Phar::offsetUnset — Eliminar un fichero de un phar
- Phar::running — Devolover la ruta completa del disco o el URL completo de phar del archivo Phar que está en ejecución
- Phar::setAlias — Establecer el alias para un archivo Phar
- Phar::setDefaultStub — Establecer el cargador o la rutina de interoperabilidad de un archivo Phar al cargador predeterminado
- Phar::setMetadata — Establecer la metainformación de un archivo phar
- Phar::setSignatureAlgorithm — Establecer el algoritmo de firma para un phar y aplicarlo
- Phar::setStub — Establecer el cargador de PHP o la rutina de interoperabilidad de un archivo Phar
- Phar::startBuffering — Iniciar las operaciones de escritura en buffer de Phar, no modifica el objeto Phar del disco
- Phar::stopBuffering — Detener las peticiones de escritura en buffer del archivo Phar, y guardar los cambios en disco
- Phar::unlinkArchive — Elimiar completamente un archivo phar del disco y de la memoria
- Phar::webPhar — mapPhar para archivos phar basados en web. Controlador principal para aplicaciones web