Konvertieren Sie ein PHP-Bild in ein Byte-Array

PHPz
Freigeben: 2023-05-06 11:33:07
Original
856 Leute haben es durchsucht

Bei der Entwicklung mit PHP ist es oft notwendig, Bilddateien in Byte-Arrays zu konvertieren, um sie einfach über das Netzwerk übertragen oder in einer Datenbank speichern zu können. In diesem Artikel wird erläutert, wie Sie mit PHP Bilder in Byte-Arrays konvertieren.

1. Verwenden Sie die Funktion file_get_contents(), um Bilddateien zu lesen.

Verwenden Sie in PHP die Funktion file_get_contents(), um den Dateiinhalt unter dem angegebenen Pfad, einschließlich binärer Dateitypen wie Bilder, Audio, Videos usw., einfach zu lesen . Der Beispielcode lautet wie folgt:

$file = 'path/to/image.jpg'; // 图片文件路径 $data = file_get_contents($file); // 读取图片内容
Nach dem Login kopieren

Hier ist $file der angegebene Bilddateipfad und $data der binäre Inhalt des gelesenen Bildes. Mit dieser Methode zum Lesen von Dateien können Sie die Variable $image direkt an den Browser ausgeben, sodass der Browser den Bildtyp automatisch identifizieren und anzeigen kann, wie unten gezeigt:

header('Content-Type:image/jpeg'); // 告诉浏览器返回的是JPEG格式的图片 echo $data; // 输出图片数据
Nach dem Login kopieren

2. Konvertieren Sie die Bilddaten in ein Byte-Array

Nach dem vorherigen Schritt haben wir den binären Inhalt des Bildes erfolgreich gelesen. Als nächstes müssen wir ihn zur einfachen Verwendung und Übertragung in ein Byte-Array konvertieren. Hier können wir die Funktion pack() verwenden, um die Bilddaten in eine Binärzeichenfolge zu packen(), und dann die Funktion str_split() verwenden, um die Binärzeichenfolge in Bytes aufzuteilen, um ein Byte-Array zu erhalten. Der Beispielcode lautet wie folgt:

$bytes = str_split(pack('H*', bin2hex($data)));
Nach dem Login kopieren

Hier konvertiert die Funktion bin2hex() die Binärzeichenfolge in eine hexadezimale digitale Form, dann packt die Funktion pack() die Daten in eine Binärzeichenfolgenform und schließlich teilt die Funktion str_split() die Daten auf Binärzeichenfolge in Für jedes Byte können Sie ein Byte-Array erhalten.

3. Verwenden Sie die Base64-Codierung, um das Byte-Array in Text umzuwandeln.

Mithilfe von Byte-Arrays können Bilddaten in der Datenbank gespeichert und auch über das Netzwerk übertragen werden. Normalerweise müssen wir sie jedoch auch in Textform konvertieren kann für bestimmte Zwecke verwendet und angezeigt werden, beispielsweise für die Anzeige von Bildern in HTML-Seiten. Hier können wir die Base64-Codierung verwenden, um das Byte-Array in Textform umzuwandeln. Der Beispielcode lautet wie folgt:

$base64 = base64_encode($data);
Nach dem Login kopieren

Hier ist $data der Binärinhalt des zuvor gelesenen Bildes. Verwenden Sie die Funktion base64_encode(), um die Binärdaten in Base64-codierten Text umzuwandeln.

IV. Zusammenfassung

In diesem Artikel wird erläutert, wie Sie Bilddateien mit PHP in Byte-Arrays konvertieren. Die allgemeinen Schritte sind: Verwenden Sie zuerst die Funktion file_get_contents(), um die Bildbinärdaten zu lesen, und verwenden Sie dann die Funktion pack() Packen Sie die Daten in Binärzeichenfolgenform und teilen Sie die Binärzeichenfolge schließlich mit der Funktion str_split() in jedes Byte auf, um ein Byte-Array zu erhalten. Wenn Sie das Byte-Array in Textform konvertieren müssen, können Sie die Base64-Codierung verwenden. Diese Vorgänge werden häufig bei der Netzwerkübertragung und Datenbankspeicherung verwendet.

Das obige ist der detaillierte Inhalt vonKonvertieren Sie ein PHP-Bild in ein Byte-Array. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!