Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk Menukar Medan MySQL BLOB kepada Fail Imej dalam PHP?

Bagaimana untuk Menukar Medan MySQL BLOB kepada Fail Imej dalam PHP?

Patricia Arquette
Patricia Arquetteasal
2024-11-11 18:51:02264semak imbas

How to Convert a MySQL BLOB Field to an Image File in PHP?

Tukar Medan Blob MySQL kepada Fail Imej dalam PHP

Dalam PHP, anda boleh menukar data yang disimpan sebagai BLOB (Binary Large Object ) medan dalam pangkalan data MySQL ke dalam fail imej. Ini berguna untuk memaparkan imej pada halaman web atau menyimpannya dalam sistem fail.

Berikut ialah tiga kaedah yang boleh anda gunakan, bergantung pada pustaka imej PHP yang telah anda pasang:

Perpustakaan GD:

$image = imagecreatefromstring($blob);

ob_start(); // Capture the output buffer
imagejpeg($image, null, 80);
$data = ob_get_contents();
ob_end_clean();

echo '<img src="data:image/jpg;base64,' . base64_encode($data) . '" />';

Perpustakaan ImageMagick (iMagick):

$image = new Imagick();
$image->readimageblob($blob);
echo '<img src="data:image/png;base64,' . base64_encode($image->getimageblob()) . '" />';

Perpustakaan GraphicsMagick (gMagick):

$image = new Gmagick();
$image->readimageblob($blob);
echo '<img src="data:image/png;base64,' . base64_encode($image->getimageblob()) . '" />';

Dalam contoh ini, pernyataan gema menggunakan URI data untuk memaparkan imej sebaris. Sebagai alternatif, anda boleh menggunakan fungsi header() untuk mengeluarkan imej terus ke penyemak imbas:

header('Content-Type: image/jpeg');
echo $data;

Atas ialah kandungan terperinci Bagaimana untuk Menukar Medan MySQL BLOB kepada Fail Imej dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn