Wie ermittelt man den richtigen Bildinhaltstyp für PHP-Header?

DDD
Freigeben: 2024-10-18 06:32:02
Original
974 Leute haben es durchsucht

How to Determine the Correct Image Content Type for PHP Headers?

Bestimmen des Bildinhaltstyps für den PHP-Header

Bei der Anzeige von Bildern von außerhalb des Webstamms mithilfe der Header()-Funktion kann es bei Benutzern zu Verwirrung kommen bezüglich des angegebenen Inhaltstyps: image/png. Trotz des festen Inhaltstyps können jedoch Bilder mit verschiedenen Erweiterungen (z. B. JPG, GIF) weiterhin erfolgreich angezeigt werden.

Um diese Diskrepanz zu beheben, ist es entscheidend, die richtige dynamisch zu ermitteln Bildinhaltstyp basierend auf der Dateierweiterung. Das folgende Code-Snippet bietet eine Lösung:

<code class="php">$filename = basename($file);
$file_extension = strtolower(substr(strrchr($filename,"."),1));

switch( $file_extension ) {
    case "gif": $ctype="image/gif"; break;
    case "png": $ctype="image/png"; break;
    case "jpeg":
    case "jpg": $ctype="image/jpeg"; break;
    case "svg": $ctype="image/svg+xml"; break;
    default:
}

header('Content-type: ' . $ctype);</code>
Nach dem Login kopieren

Durch die Verwendung dieses Ansatzes kann der Code den richtigen Inhaltstyp anhand der Dateierweiterung identifizieren und den Header entsprechend festlegen. Es ist erwähnenswert, dass der korrekte Inhaltstyp für JPG-Dateien image/jpeg ist, der anstelle des bisher verwirrenden image/png verwendet werden sollte.

Das obige ist der detaillierte Inhalt vonWie ermittelt man den richtigen Bildinhaltstyp für PHP-Header?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage