Le format de fichier Phar

Le format de fichier phar est composé de conteneur/manifeste/contenu/signature, et stocke les informations cruciales de ce qui est contenu dans l'archive phar dans son manifeste.

Le manifeste Phar est un format hautement optimisé qui permet la spécification fichier par fichier de la compression, des permissions et même des métadonnées utilisateur tels que l'utilisateur ou le groupe propriétaire. Toutes les valeurs de plus d'un octet sont stockées sous forme petit-boutiste, A l'exception de la version de l'API qui est stockée pour des raisons historiques en 3 morceaux grand-boutistes.

Tous les drapeaux non utilisés sont réservés pour un usage futur et ne doivent pas être utilisés pour stocker des informations personnalisées. Utilisez les métadonnées par fichier pour stocker des métadonnées personnalisées sur des fichiers particuliers.

Le format de fichier basique du manifeste d'une archive Phar est le suivant :

Format global du manifeste Phar
Taille en octets Description
4 octets Longueur du manifeste en octets (limitée à 1 Mo)
4 octets Nombre de fichiers dans le Phar
2 octets Version de l'API du manifest Phar (à ce jour 1.0.0)
4 octets Drapeaux "bitmappés" globaux du Phar
4 octets Longueur de l'alias Phar
?? L'alias Phar (longueur basée sur la valeur précédente)
4 octets Longueur des métadonnées Phar (0 si aucune)
?? métadonnées Phar sérialisées, stockées dans un format serialize()
au moins 24 * nombre d'octets des entrées Entrées pour chaque fichier