Heim  >  Artikel  >  Backend-Entwicklung  >  Wie erkennt man den Bildtyp anhand des Base64-Strings in PHP?

Wie erkennt man den Bildtyp anhand des Base64-Strings in PHP?

Susan Sarandon
Susan SarandonOriginal
2024-10-24 04:38:02762Durchsuche

How to Detect Image Type from Base64 String in PHP?

PHP-String-basierte Bildtyperkennung

Die Identifizierung des Typs eines als Base64-String kodierten Bildes kann in PHP eine Herausforderung sein. Herkömmliche Bilderkennungsmethoden, die auf Dateizugriff basieren, sind in diesem Szenario nicht anwendbar. Es gibt jedoch eine zuverlässige Lösung mit FileInfo:

Die Rolle von FileInfo bei der Erkennung des Bildtyps

FileInfo bietet eine elegante Möglichkeit, den MIME-Typ eines Bildes anhand seiner Base64 zu bestimmen -codierte Darstellung. Mit finfo_buffer() können Sie den Base64-String in einen Bildpuffer dekodieren und ihn dann zur Analyse an FileInfo übergeben. Das FILEINFO_MIME_TYPE-Flag gibt an, dass Sie den MIME-Typ abrufen möchten, der normalerweise dem Bildformat entspricht.

Implementierungsschritte

So verwenden Sie FileInfo für die Bildtyperkennung:

  1. Beginnen Sie mit der Dekodierung der Base64-Zeichenfolge in einen Bildpuffer.
  2. Öffnen Sie ein FileInfo-Objekt und geben Sie das Flag FILEINFO_MIME_TYPE an.
  3. Übergeben Sie den Bildpuffer über den finfo_buffer an FileInfo ()-Funktion.
  4. Die resultierende Variable $mime_type enthält den MIME-Typ, der zur Bestimmung des Bildformats verwendet werden kann.

Beispielverwendung

<code class="php">$encoded_string = "....";
$imgdata = base64_decode($encoded_string);

$f = finfo_open();

$mime_type = finfo_buffer($f, $imgdata, FILEINFO_MIME_TYPE);</code>

Das obige ist der detaillierte Inhalt vonWie erkennt man den Bildtyp anhand des Base64-Strings in PHP?. 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