Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Memaparkan Imej yang Dicipta Semula daripada Data Binari Secara Terus dalam PHP?

Bagaimana untuk Memaparkan Imej yang Dicipta Semula daripada Data Binari Secara Terus dalam PHP?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-09 13:56:02176semak imbas

How to Display Recreated Images from Binary Data Directly in PHP?

Memaparkan Imej Yang Dicipta Semula daripada Data Perduaan dalam PHP

Tugas biasa melibatkan mendapatkan semula dan memaparkan imej yang disimpan sebagai data binari. Untuk mengoptimumkan proses ini, adalah wajar untuk memproses dan memaparkan imej dalam skrip yang sama tanpa memerlukan storan atau skrip luaran.

Penyelesaian:

PHP menyediakan penyelesaian melalui penggunaan URI data. URI ini membenamkan data perduaan terus ke dalam HTML, membenarkannya dipaparkan tanpa merujuk fail luaran.

Sintaks untuk URI data adalah seperti berikut:

data:[<MIME-type>][;charset="<encoding>"][;base64],<data>

Di mana:

  • Jenis MIME: Menentukan jenis data yang dibenamkan, seperti "imej/png" atau "image/jpeg".
  • charset: Parameter pilihan yang menyatakan pengekodan aksara data, biasanya "base64".
  • data: Data binari dikodkan sebagai base64.

Untuk memproses data binari, gunakan fungsi PHP yang sesuai seperti gd_imagecreatefromstring() untuk memuatkan imej daripada strim binari. Setelah diproses, tukarkan semula imej kepada binari menggunakan imagepng() atau imagejpeg().

Akhir sekali, kodkan data sebagai base64 menggunakan base64_encode(). Data yang dikodkan ini kemudiannya boleh digunakan sebagai sumber untuk teg imej HTML:

<?php
function data_uri($binary_data, $mime_type)
{
  return 'data:' . $mime_type . ';base64,' . base64_encode($binary_data);
}

// Get binary data of image
$imagedata = get_binary_data();

// Process image
$processed_imagedata = process_image($binary_data);

// Display image using data URI
echo '<img src="' . data_uri($processed_imagedata, 'image/png') . '" alt="Processed Image">';
?>

Atas ialah kandungan terperinci Bagaimana untuk Memaparkan Imej yang Dicipta Semula daripada Data Binari Secara Terus 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