Please wait while we load your page...
 

Announcements

PHP Manual :: Head-to-head comparison of Phar, Tar and Zip



Phar file stub || Tar-based phars || What makes a phar a phar and not a tar or a zip? || PHP Manual

What are the good and the bad things about the three supported file formats in the phar extension? This table attempts to address that question.

Feature matrix: Phar vs. Tar vs. Zip
Feature Phar Tar Zip
Standard File Format No Yes Yes
Can be executed without the Phar Extension [1] Yes No No
Per-file compression Yes No Yes
Whole-archive compression Yes Yes No
Whole-archive signature validation Yes Yes Yes (PHP 5.3.1+)
Web-specific application support Yes Yes Yes
Per-file Meta-data Yes Yes Yes
Whole-Archive Meta-data Yes Yes Yes
Archive creation/modification [2] Yes Yes Yes
Full support for all stream wrapper functions Yes Yes Yes
Can be created/modified even if phar.readonly=1 [3] No Yes Yes

Tip

[1] PHP can only directly access the contents of a Phar archive without the Phar extension if it is using a stub that extracts the contents of the phar archive. The stub created by Phar::createDefaultStub() extracts the phar archive and runs its contents from a temporary directory if no phar extension is found.

Tip

[2] All write access requires phar.readonly to be disabled in php.ini or on the command-line directly.

Tip

[3] Only tar and zip archives without .phar in their filename and without an executable stub .phar/stub.php can be created if phar.readonly=1.



Phar file stub || Tar-based phars || What makes a phar a phar and not a tar or a zip? || PHP Manual
Live Chat Not Available