In der tatsächlichen Entwicklung müssen wir manchmal einige Binärströme in String-Form konvertieren, z. B. Bilder in String-Form konvertieren und in der Datenbank speichern. In PHP können wir Blob-Felder zum Speichern von Binärströmen verwenden, aber manchmal müssen wir Blob-Felder in Base64-Kodierung konvertieren, um sie auf Webseiten anzuzeigen. In diesem Artikel besprechen wir, wie man Blob-Felder in PHP in die Base64-Kodierung konvertiert.
Zuerst müssen wir die Binärdaten des Blob-Felds aus der Datenbank lesen. Wir können die PDO-Erweiterung von PHP verwenden, um die Datenbank zu betreiben. Das Folgende ist ein einfacher Beispielcode:
try { $dbh = new PDO("mysql:host=localhost;dbname=test", $user, $pass); $stmt = $dbh->prepare("SELECT image FROM images WHERE id = ?"); $stmt->bindParam(1, $id); $stmt->execute(); $image = $stmt->fetchColumn(); $dbh = null; } catch (PDOException $e) { print "Error!: " . $e->getMessage() . "<br/>"; die(); }
Im obigen Code verwenden wir die vorbereitete PDO-Anweisung, um die Bildfelddaten im Datensatz mit der ID $id aus der Datenbank zu lesen. Die Variable $image enthält den binären Datenstrom.
Als nächstes müssen wir den binären Datenstrom in die Base64-Kodierung konvertieren. Die in PHP integrierte Funktion base64_encode () kann diese Funktion erreichen. Das Folgende ist ein Beispielcode:
$base64_image = base64_encode($image);
Konvertieren Sie den binären Datenstrom $image in die Base64-Kodierung und speichern Sie ihn in der Variablen $base64_image.
Endlich können wir Base64-codierte Bilddaten in Webseiten verwenden. Hier ist der Beispielcode:
<img src="data:image/jpeg;base64,<?php echo $base64_image; ?>" alt="image" />
Der obige Code zeigt ein Bild im Browser an. Unter diesen repräsentiert data:image/jpeg;base64 das Kodierungsformat des Bildes und der base64-kodierten Bilddaten.
Während der Entwicklung können wir die obige Methode verwenden, um das Blob-Feld zur Anzeige auf der Webseite in Base64-Kodierung umzuwandeln. Dadurch entfällt die Notwendigkeit, bei jedem Seitenaufruf Bilder vom Server herunterzuladen. Gleichzeitig können Serverbandbreite und Ressourcen eingespart werden.
Das obige ist der detaillierte Inhalt vonSo konvertieren Sie Blobs in PHP in Base64. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!