.PHAR

File PHAR

PHP Archive
Fai una domanda
RISPOSTA RAPIDA

Un file PHAR è un PHP Archive - un'intera applicazione o libreria PHP confezionata in un unico file eseguibile, l'equivalente PHP di un JAR di Java. Per eseguirlo, apri un terminale con PHP installato e digita php tool.phar. Poiché contiene codice eseguibile, esegui solo file PHAR provenienti da fonti ufficiali e affidabili.

Sviluppatore: Greg Beaver / PHP project (PEAR) Categoria: File eseguibili (exe) Standard aperto MIME: application/x-php-archive
SI APRE SU Windows macOS Linux
Correlati: .APK · .EXE · .VBS · .JAR

In questa pagina

19k+ estensioni indicizzate
Ultima revisione Aug 17, 2026

Non sei sicuro di cosa sia il tuo file?

Trascina qualsiasi file nel nostro identificatore - leggiamo solo i primi byte per dare un nome al formato.

Identifica un file

Che cos'è il formato di file PHAR?

I file .phar sono associati all'ambiente di sviluppo PHP. Un archivio .phar è l'equivalente PHP di un file JAR - raggruppa un'intera applicazione o libreria PHP in un unico pacchetto eseguibile e autonomo che può essere distribuito come un singolo file.

Che tipo di dati possono contenere i file PHAR?

Gli archivi .phar memorizzano script PHP e qualsiasi risorsa di supporto (template, configurazioni, risorse), opzionalmente compressi con gzip o bzip2 su base per-file o per l'intero archivio. Ogni file .phar contiene uno stub PHP eseguibile, un manifesto binario che elenca i file inclusi con i relativi metadati e una firma crittografica opzionale (MD5, SHA-1, SHA-256, SHA-512 o OpenSSL) verificata tramite phar.require_hash.

Come posso eseguire i file PHAR?

I file .phar possono essere eseguiti direttamente con l'interprete a riga di comando di PHP: php app.phar. Esempi ben noti includono composer.phar e phpunit.phar. La creazione o la modifica programmatica di un Phar richiede l'impostazione phar.readonly=0 nel file php.ini, che di default è impostata su 1 (sola lettura).

Problemi di sicurezza relativi ai file PHAR

A partire da PHP 5.3.0, il supporto Phar è abilitato per impostazione predefinita. L'esecuzione automatica di codice PHAR in un ambiente PHP comporta seri rischi per la sicurezza del sistema. Sono noti casi in cui codice PHP malevolo è stato distribuito in file PHAR mascherati da file JPEG o .txt tramite una semplice sostituzione dell'estensione. L'apertura di un file del genere può causare l'infezione del sistema con software dannoso. Inoltre, l'attivazione di stream wrapper Phar (phar://) su percorsi file controllati da un utente malintenzionato può deserializzare i metadati incorporati e portare all'esecuzione di codice remoto tramite object-injection.

Sicurezza e incolumità

RISCHIO: HIGH

Un PHAR è codice PHP eseguibile, quindi trattalo come qualsiasi programma: esegui solo Phar provenienti da fonti ufficiali e affidabili (come composer.phar da getcomposer.org o phpunit.phar da phpunit.de) e verifica il checksum o la firma pubblicata quando forniti. Oltre all'esecuzione, i Phar sono un noto vettore di attacco lato server: lo stream wrapper phar:// può deserializzare metadati incorporati, consentendo l'iniezione di oggetti PHP / esecuzione di codice remoto se un'applicazione passa percorsi controllati dall'attaccante alle funzioni di gestione file. Non eseguire mai un .phar non richiesto e, sui server, evita di passare input utente a funzioni che possono risolvere percorsi phar://.

Dettagli del formato

in sintesi
NOME COMPLETOPHP Archiveanche noto come PHAR archive, PHP Archive package
SVILUPPATOREGreg Beaver / PHP project (PEAR)dal 2008 (Phar extension bundled in PHP 5.3)
TIPO MIMEapplication/x-php-archive
TIPOArchivio autonomo di applicazioni/librerie PHP (pacchetto eseguibile)
STANDARDAperto · royalty-free

Programmi che aprono file PHAR

Windows2 apps
7-Zip Open-source Se il Phar utilizza il layout tar/zip, copialo in tool.tar/tool.zip e aprilo con 7-Zip per ispezionare i file senza eseguire il codice.
PHP (CLI) Open-source Apri un terminale ed esegui php tool.phar (o php tool.phar --help) per avviarlo.
macOS1 app
PHP (CLI) Open-source Apri un terminale ed esegui php tool.phar (o php tool.phar --help) per avviarlo.
Linux1 app
PHP (CLI) Open-source Apri un terminale ed esegui php tool.phar (o php tool.phar --help) per avviarlo.

Dettagli tecnici

specifiche approfondite
Punto di ingresso (stub)Stub PHP eseguibile che termina con il token `__HALT_COMPILER();`, che segna l'inizio del manifesto binario
Magic byte della firma finaleMagic byte di 4 byte GBMB nel blocco della firma finale (presente solo nei Phar firmati)
CompressioneNessuna, Zlib (gzip) o Bzip2 - configurabile per singolo file o per l'intero archivio
Algoritmi di firmaMD5, SHA-1, SHA-256, SHA-512 o OpenSSL X.509 (controllati da phar.require_hash nel php.ini)
Metodo di esecuzioneEsecuzione diretta con `php app.phar`; nessuna estrazione richiesta
Requisito di creazione`phar.readonly=0` deve essere impostato nel php.ini per creare o modificare file Phar a runtime
Layout internoStub PHP + manifesto binario (elenco file, versione API, flag) + dati dei file + blocco firma opzionale
Ordine dei byteLittle-endian
Dimensioni tipicheDa decine di KB a decine di MB (es. composer.phar ~2 MB, phpunit.phar ~3 MB)
Supporto versioni PHPIncluso di default da PHP 5.3 (2009); mantenuto fino a PHP 8.x
Rischio di sicurezzaLa deserializzazione Phar tramite lo stream wrapper `phar://` su percorsi controllati da un attaccante può innescare RCE via object-injection
Layout di payload supportatiPhar flat, Phar basato su tar o Phar basato su zip (PHP seleziona il formato dal manifesto)
Rilasciato2008 (Phar extension bundled in PHP 5.3)
Ultima versioneMaintained as a core PHP extension (current through PHP 8.x)
Standard apertoSì · royalty-free
Specificawww.php.net

Conversioni PHAR

Domande e risposte della community

chiesto dagli utenti
Fai una domanda veloce
Ottieni aiuto da persone che lavorano con i file PHAR. Sii specifico - includi il tuo sistema e la versione del software.
Nessun account necessario · risposte solitamente entro un giorno

Ancora nessuna domanda - sii il primo a chiedere informazioni sui file PHAR.

Domande frequenti

Come si esegue un file PHAR?
Da un terminale con PHP installato: php tool.phar. Su Linux/macOS puoi anche usare chmod +x tool.phar && ./tool.phar se contiene uno shebang. Fare doppio clic di solito non funziona.
Cos'è un file PHAR?
Un PHP Archive - un'intera applicazione o libreria PHP confezionata in un unico file eseguibile, come un JAR di Java. Composer e PHPUnit sono distribuiti in questo modo.
Come si apre un PHAR per vederne il contenuto?
Senza eseguirlo: copialo in .tar o .zip (molti Phar usano quei layout) e aprilo con 7-Zip, oppure usa l'API Phar di PHP per estrarre i file.
È sicuro eseguire un file PHAR?
Solo se proviene da fonti affidabili. Un Phar contiene codice eseguibile e lo stream wrapper Phar presenta una nota classe di attacco object-injection/RCE, quindi non eseguire mai un .phar sconosciuto.
Perché il mio PHAR non si avvia - errore 'phar.readonly'?
Eseguire un Phar va bene, ma crearne o modificarne uno richiede phar.readonly=0 nel php.ini. Se vuoi solo eseguirlo, tale impostazione non è necessaria.
Posso trasformare un PHAR in un EXE?
Non tramite conversione - un Phar ha bisogno di PHP per funzionare. Installa PHP ed esegui php tool.phar, oppure impacchetta PHP con il Phar usando un packager dedicato se hai davvero bisogno di un .exe autonomo.

Riferimenti

1PHP Manual - Phar file formatwww.php.net
2PHP Manual - Introduction to Pharwww.php.net

Continua a esplorare

nel database

Migliori estensioni della settimana

1.AQQAQQ Instant Messenger File
2.BINCD/DVD Disc Image (BIN/CUE)
3.CRDOWNLOADChrome Partial Download File
4.PARTPartial Download File
5.MDMarkdown Document
6.RPMSGRestricted Permission Message
7.NOMEDIAAndroid No-Media Marker File
8.PRO6XProPresenter 6 Bundle File
9.PRDXSoftMaker Presentations Document
10.EXEWindows Executable (Portable Executable)

Estensioni correlate

.APKAndroid Package
.EXEWindows Executable (Portable Executable)
.VBSVBScript file (Visual Basic Script)
.JARJava Archive
.EX4MetaTrader 4 Compiled Program (Expert Advisor / Indicator / Script)
.APPXMicrosoft Windows App Package (AppX)

Strumenti file gratuiti

Un identificatore di file e convertitore di immagini nel browser - tutto viene eseguito sul tuo dispositivo.

Apri la cassetta degli attrezzi

Sfoglia le estensioni dei file A-Z