.PHAR

PHAR-fil

PHP Archive
Stil et spørgsmål
HURTIGT SVAR

En PHAR-fil er et PHP Archive - en komplet PHP-applikation eller et bibliotek pakket i én eksekverbar fil, hvilket svarer til en Java JAR. For at køre den skal du åbne en terminal med PHP installeret og skrive php tool.phar. Da den indeholder kørbar kode, bør du kun eksekvere PHAR-filer fra betroede, officielle kilder.

Udvikler: Greg Beaver / PHP project (PEAR) Kategori: Eksekverbare filer Åben standard MIME: application/x-php-archive
ÅBNER PÅ Windows macOS Linux
Relateret: .APK · .EXE · .VBS · .JAR

På denne side

19k+ filtyper indekseret
Sidst gennemset Aug 17, 2026

Er du ikke sikker på, hvad din fil er?

Træk en fil over i vores identifikator - vi læser kun de første bytes for at navngive formatet.

Identificer en fil

Hvad er PHAR-filformatet?

.phar-filer er tilknyttet PHP-udviklingsmiljøet. Et .phar-arkiv er PHP-modstykket til en JAR-fil - det pakker en hel PHP-applikation eller et bibliotek ind i en enkelt selvstændig, eksekverbar pakke, der kan distribueres som én fil.

Hvilken type data kan PHAR-filer indeholde?

.phar-arkiver gemmer PHP-scripts og alle understøttende aktiver (skabeloner, konfigurationer, ressourcer), valgfrit komprimeret med gzip eller bzip2 på fil- eller arkivniveau. Enhver .phar-fil indeholder en eksekverbar PHP-stub, et binært manifest, der viser de bundtede filer med metadata, og en valgfri kryptografisk signatur (MD5, SHA-1, SHA-256, SHA-512 eller OpenSSL) verificeret via phar.require_hash.

Hvordan kan jeg køre PHAR-filer?

.phar-filer kan køres direkte med PHP-kommandolinje-fortolkeren: php app.phar. Kendte eksempler inkluderer composer.phar og phpunit.phar. Oprettelse eller ændring af en Phar programmatisk kræver phar.readonly=0 i php.ini, som som standard er sat til 1 (skrivebeskyttet).

Sikkerhedsovervejelser vedrørende PHAR-filer

Siden PHP 5.3.0 har Phar-understøttelse været aktiveret som standard. Automatisk PHAR-kodeeksekvering i et PHP-miljø udgør alvorlige systemsikkerhedsrisici. Der er kendte tilfælde, hvor ondsindet PHP-kode blev distribueret i PHAR-filer maskeret som JPEG eller .txt-filer ved hjælp af simpel filendelsesudskiftning. Åbning af en sådan fil kan medføre, at systemet bliver inficeret med ondsindet software. Desuden kan aktivering af Phar-stream-wrappers (phar://) på filstier kontrolleret af en angriber deserialisere indlejrede metadata og føre til fjernafvikling af kode via objekt-injektion.

Sikkerhed og tryghed

RISIKO: HIGH

En PHAR er eksekverbar PHP-kode, så behandl den som ethvert andet program: kør kun Phars fra betroede, officielle kilder (composer.phar fra getcomposer.org, phpunit.phar fra phpunit.de), og bekræft den publicerede checksum/signatur, når den er tilgængelig. Udover selve kørslen er Phars en berygtet angrebsvektor på serversiden: phar:// stream-wrapperen kan deserialisere indlejrede metadata, hvilket muliggør PHP-objekt-injektion / fjernafvikling af kode, hvis en applikation sender angriber-kontrollerede stier til filfunktioner. Kør aldrig en uopfordret .phar, og undgå på servere at sende brugerinput ind i funktioner, der kan opløse phar://-stier.

Formatdetaljer

kort fortalt
FULDSTÆNDIGT NAVNPHP Archiveogså kendt som PHAR archive, PHP Archive package
UDVIKLERGreg Beaver / PHP project (PEAR)siden 2008 (Phar extension bundled in PHP 5.3)
MIME-TYPEapplication/x-php-archive
TYPESelvstændigt PHP-applikations/biblioteksarkiv (eksekverbar pakke)
STANDARDÅben · royaltyfri

Programmer der åbner PHAR-filer

Windows2 apps
7-Zip Open-source Hvis Phar-filen bruger tar/zip-layout, kan du kopiere den til tool.tar/tool.zip og åbne den med 7-Zip for at inspicere filerne uden at køre koden.
PHP (CLI) Open-source Åbn en terminal og kør php tool.phar (eller php tool.phar --help) for at eksekvere den.
macOS1 app
PHP (CLI) Open-source Åbn en terminal og kør php tool.phar (eller php tool.phar --help) for at eksekvere den.
Linux1 app
PHP (CLI) Open-source Åbn en terminal og kør php tool.phar (eller php tool.phar --help) for at eksekvere den.

Tekniske detaljer

dyb specifikation
Indgangspunkt (stub)Eksekverbar PHP-stub, der slutter med `__HALT_COMPILER();` token, som markerer starten på det binære manifest
Afsluttende signatur-magicGBMB 4-byte magic i den afsluttende signaturblok (kun til stede i signerede Phars)
KomprimeringIngen, Zlib (gzip) eller Bzip2 - konfigurerbar pr. fil eller for hele arkivet
SignaturalgoritmerMD5, SHA-1, SHA-256, SHA-512 eller OpenSSL X.509 (styret af phar.require_hash i php.ini)
EksekveringsmetodeKøres direkte med `php app.phar`; ingen udpakning påkrævet
Krav til oprettelse`phar.readonly=0` skal være indstillet i php.ini for at oprette eller ændre Phar-filer under kørsel
Internt layoutPHP-stub + binært manifest (filliste, API-version, flag) + fildata + valgfri signaturblok
Byte-ordenLittle-endian
Typisk størrelseTi-tals KB til ti-tals MB (f.eks. composer.phar ~2 MB, phpunit.phar ~3 MB)
PHP-versionsunderstøttelseBundtet som standard siden PHP 5.3 (2009); vedligeholdt gennem PHP 8.x
SikkerhedsrisikoPhar-deserialisering via `phar://` stream-wrapper på angriber-kontrollerede stier kan udløse objekt-injektion RCE
Understøttede payload-layoutsFlat Phar, tar-baseret Phar eller zip-baseret Phar (PHP vælger formatet ud fra manifestet)
Udgivet2008 (Phar extension bundled in PHP 5.3)
Seneste versionMaintained as a core PHP extension (current through PHP 8.x)
Åben standardJa · royaltyfri
Specifikationwww.php.net

PHAR-konverteringer

Fællesskabets Q&A

spurgt af brugere
Stil et hurtigt spørgsmål
Få hjælp fra folk, der arbejder med PHAR-filer. Vær specifik - medtag dit system og din softwareversion.
Ingen konto nødvendig · svar normalt inden for en dag

Ingen spørgsmål endnu - vær den første til at spørge om PHAR-filer.

Ofte stillede spørgsmål

Hvordan kører jeg en PHAR-fil?
Fra en terminal med PHP installeret: php tool.phar. På Linux/macOS kan du også bruge chmod +x tool.phar && ./tool.phar, hvis den har en shebang. Dobbeltklik fungerer normalt ikke.
Hvad er en PHAR-fil?
Et PHP Archive - en hel PHP-applikation eller et bibliotek pakket i én eksekverbar fil, ligesom en Java JAR. Composer og PHPUnit distribueres på denne måde.
Hvordan åbner jeg en PHAR for at se indholdet?
Uden at køre den: kopier den til .tar eller .zip (mange Phars bruger disse layouts) og åbn med 7-Zip, eller brug PHP's Phar API til at udpakke filerne.
Er det sikkert at køre en PHAR-fil?
Kun fra betroede kilder. En Phar indeholder kørbar kode, og Phar-stream-wrapperen har en kendt angrebsklasse for objekt-injektion/RCE, så eksekver aldrig en ukendt .phar.
Hvorfor vil min PHAR ikke køre - 'phar.readonly' fejl?
Det er fint at køre en Phar, men oprettelse eller ændring af en kræver phar.readonly=0 i php.ini. Hvis du kun vil køre den, er den indstilling ikke nødvendig.
Kan jeg lave en PHAR om til en EXE?
Ikke ved konvertering - en Phar kræver PHP for at køre. Installer PHP og kør php tool.phar, eller bundt PHP med din Phar ved hjælp af en dedikeret packager, hvis du virkelig har brug for en selvstændig .exe.

Referencer

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

Udforsk mere

på tværs af databasen

Populære filtyper i denne uge

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)

Relaterede filtyper

.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)

Gratis filværktøjer

En fil-identifikator og billedkonverter direkte i browseren - alt kører på din enhed.

Åbn værktøjskassen

Gennemse filtyper A-Å