Comparaison entre Phar, Tar et Zip

Quels sont les avantages et les inconvénients de chacun des trois formats supportés par l'extension phar ? Ce tableau tente de répondre à cette question.

Tableau comparatif : Phar, Tar et Zip
FonctionnalitéPharTarZip
Format de fichier standardNonOuiOui
Peut être exécuté sans l'extension Phar [1]OuiNonNon
Compression par fichierOuiNonOui
Compression pour toute l'archiveOuiOuiNon
Validation par signature de toute l'archiveOuiOuiOui
Support d'applications spécifiquement WebOuiOuiOui
Métadonnées par fichierOuiOuiOui
Métadonnées pour toute l'archiveOuiOuiOui
Création/modification d'archive [2]OuiOuiOui
Support complet de toutes les fonctions de fluxOuiOuiOui
Peut être créée/modifiée même si phar.readonly=1 [3]NonOuiOui

Astuce

[1] PHP ne peut accéder directement au contenu d'une archive Phar sans que l'extension Phar soit installée si elle utilise un conteneur qui extrait le contenu de l'archive phar. Le conteneur créé par Phar::createDefaultStub() extrait l'archive phar et exécute son contenu à partir d'un répertoire temporaire si aucune extension phar n'est trouvée.

Astuce

[2] Tous les accès en écriture nécessitent que phar.readonly soit désactivé dans le php.ini ou directement via la ligne de commande.

Astuce

[3] Seules les archives tar ou zip sans .phar dans leur nom et sans conteneur exécutable .phar/stub.php peuvent être créées si phar.readonly=1.

To Top