Le conteneur de fichier Phar
Les phars basés sur Tar
Qu'est-ce qui fait d'un phar un phar et pas un tar ou un zip?
PHP Manual

## 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é | Phar | Tar | Zip
--- | --- | --- | ---
Format de fichier standard | Non | Oui | Oui
Peut être exécuté sans l'extension Phar [1] | Oui | Non | Non
Compression par fichier | Oui | Non | Oui
Compression pour toute l'archive | Oui | Oui | Non
Validation par signature de toute l'archive | Oui | Oui | Oui (PHP 5.3.1+)
Support d'applications spécifiquement Web | Oui | Oui | Oui
Métadonnées par fichier | Oui | Oui | Oui
Métadonnées pour toute l'archive | Oui | Oui | Oui
Création/modification d'archive [2] | Oui | Oui | Oui
Support complet de toutes les fonctions de flux | Oui | Oui | Oui
Peut être créée/modifiée même si phar.readonly=1 [3] | Non | Oui | Oui

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.

Le conteneur de fichier Phar
Les phars basés sur Tar
Qu'est-ce qui fait d'un phar un phar et pas un tar ou un zip?
PHP Manual