Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich den MIME-Typ einer Datei in PHP mithilfe von REQUEST_URI genau bestimmen?

Wie kann ich den MIME-Typ einer Datei in PHP mithilfe von REQUEST_URI genau bestimmen?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-27 07:30:10162Durchsuche

How Can I Accurately Determine a File's MIME Type in PHP Using REQUEST_URI?

Bestimmen von MIME-Typen in PHP

Bei der Arbeit mit Dateien ist es für die ordnungsgemäße Verarbeitung von entscheidender Bedeutung, deren MIME-Typen zu identifizieren. Wie können Sie in PHP den MIME-Typ einer Datei anhand des REQUEST_URI genau bestimmen?

Verwenden von Dateierweiterungen

Ein gängiger Ansatz besteht darin, die Erweiterung der angeforderten Datei zu untersuchen . In der angegebenen index.php-Datei, die alle Anfragen verarbeitet:

include('/www/site'.$_SERVER['REQUEST_URI']);

Sie könnten die Funktion pathinfo() verwenden, um die Dateierweiterung zu extrahieren:

$filename = $_SERVER['REQUEST_URI'];
$extension = pathinfo($filename, PATHINFO_EXTENSION);

Basierend auf der Erweiterung, Sie kann den MIME-Typ mithilfe eines assoziativen Arrays oder einer Switch-Anweisung bestimmen.

Mit Exif Daten

Wenn Sie ausschließlich mit Bildern arbeiten, können Sie die Funktion exif_imagetype() verwenden:

$imageType = exif_imagetype($filename);
$mimeType = image_type_to_mime_type($imageType);

Verwenden der getID3-Bibliothek

Für eine umfassendere Dateitypidentifizierung steht die getID3-Bibliothek zur Verfügung empfohlen:

require_once '/path/to/getID3/getid3.php';
$getID3 = new getID3();
$fileinfo = $getID3->analyze($filename);
$mimeType = $fileinfo['mime_type'];

Funktion mime_content_type verwenden

Die Funktion mime_content_type() kann ebenfalls verwendet werden, ist jedoch veraltet und basiert auf der Fileinfo-PECL-Erweiterung:

$mimeType = mime_content_type($filename);

Das obige ist der detaillierte Inhalt vonWie kann ich den MIME-Typ einer Datei in PHP mithilfe von REQUEST_URI genau bestimmen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn