PHAR (dosya biçimi) - PHAR (file format)
Dosya adı uzantısı |
.phar
|
---|---|
Tarafından geliştirilmiş | PHP , Davey Shafik , Greg Beaver , Marcus Börger |
Biçim türü | Dosya arşivi , veri sıkıştırma |
Uzatıldı | ZIP , katran |
Gelen yazılım , bir PHAR ( PH P Ar bıçaklamak) dosyası olan paket formatı birçok donatılacak uygulamalar ve kütüphaneler dağılımını sağlamak için PHP kod dosyalarını ve diğer kaynakları (örn görüntüleri , stil tek bir arşiv dosyası içine, vs.).
PHAR dosyaları üç formattan birinde olabilir: ilgili araçlarla uyumlu tar ve ZIP ve özel bir PHAR formatı. Kullanılan format ne olursa olsun, tüm PHAR dosyaları .phar
dosya uzantısını kullanır . Tar ve Zip biçimindeki arşivler, standart tar ve zip araçları kullanılarak oluşturulabilir ve paketten çıkarılabilirken, PHAR biçimi, PHP için PHAR uzantısı veya PEAR PHP_Archive paketi kullanılarak özel PHP kodu gerektirir .
Tarih
2004 yılında oluşturulan PHAR dosyaları , uygulamaların FTP aracılığıyla dağıtımını hızlandırmak amacıyla Java'nın JAR dosya biçiminden etkilenmiştir . ZIP dosya biçimini kullanmak yerine, daha basit tar biçimi kullanıldı ve ilk PHAR, kavramın bir kanıtı olarak tar komut satırı yardımcı programı kullanılarak oluşturuldu. 14 Haziran 2004'te PEAR'a ilk PHP_Archive paketi önerildi ve 13 Aralık 2004'te oybirliğiyle kabul edildi.
PHAR Uzantısı
2007'de PHP_Archive, C'ye taşındı ve bir PECL uzantısı olarak yayınlandı . Uzantı, PHP 5.3.0'da varsayılan olarak dahil edilmiş ve etkinleştirilmiştir.
Tasarım (değiştir | kaynağı değiştir)
Bir PHAR dosyası Tar, Zip veya PHAR formatlı bir arşive izin verir. Biçimden bağımsız olarak, her arşiv üç bölüm içerir:
- Stub - Arşivi önyükleyecek bir PHP dosyası. Saplama gerekir ihtiva
__HALT_COMPILER();
belirteci ve varsayılan saplama ile veya PHP uzantısı etkin olmadığı bir phar çalıştırmak için yeteneğini de içerir - Manifest - Manifest arşivin içeriğini detaylandırır
- Dosya İçeriği - Arşive dahil edilen orijinal dosyalar
Ek olarak, PHAR formatı ayrıca PHAR bütünlüğünü doğrulamak için bir imza içerebilir.
Belirgin
Manifest, arşiv ve içeriği hakkında meta veri bilgilerini içerir. İkili biçimin hem PHP hem de C'de ayrıştırılması için verimli olması amaçlanmıştır. Bu, değişken uzunluklu bölümlerin izlediği uzunluk belirtim çiftlerine ek olarak sabit uzunluklu bölümlerden oluşur. Her dosya, genel bildirimin bir bölümünde kendi bildirimine sahiptir. Geçerli biçim 1.1.1 sürümüdür.
Sıkıştırma
Her üç format da sıkıştırma desteğine sahiptir, ancak yalnızca PHAR formatı hem dosya başına hem de tüm arşiv sıkıştırmasını destekler. Zip ve Tar biçimleri yalnızca sırasıyla dosya başına ve tam dosya sıkıştırmayı destekler.
PHAR dosyalarını yürütme
PHAR uzantısının etkin olduğu varsayılırsa, tüm PHAR dosyaları basitçe PHP yorumlayıcısı (" php file.phar
") ile çalıştırılarak çalıştırılabilir . PHAR uzantısı etkinleştirilmemişse, yalnızca PHAR formatı yürütülebilir.
Ek olarak, bir PHAR dosyasını çalıştırılabilir olarak işaretlemek ve PHAR'ı doğrudan çalıştırılabilir hale getirmek için uygun bir işaret eklemek mümkündür .
Kullanım
PHAR başlangıçta web kullanımı için tasarlanmış olsa da, genellikle komut satırı yardımcı programları tarafından kullanılır. PHAR biçiminde dağıtılan popüler uygulamalar arasında Composer ve PHPUnit bulunur .