Bagaimanakah saya boleh memaparkan imej daripada data binari dalam satu skrip tanpa menyimpannya ke cakera?

Patricia Arquette
Lepaskan: 2024-11-08 06:37:02
asal
969 orang telah melayarinya

How can I display an image from binary data in a single script without saving it to disk?

Mencipta dan Memaparkan Imej daripada Data Binari dalam Skrip Tunggal

Banyak aplikasi memerlukan keupayaan untuk memproses imej daripada data binari dan memaparkannya tanpa storan perantaraan pada cakera. Artikel ini meneroka cara untuk mencapai fungsi ini menggunakan URI data.

URI Data

URI data menyediakan cara untuk membenamkan data binari terus ke dalam HTML atau CSS. Ia terdiri daripada tiga bahagian:

  • Jenis MIME: Mengenal pasti jenis data (cth., "imej/png").
  • Pengekodan Pilihan : Menentukan pengekodan aksara data (cth., "base64").
  • Data: Data binari dikodkan sebagai rentetan.

Menggunakan URI Data untuk Imej

Untuk membenamkan imej sebagai URI data, format berikut ialah digunakan:

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

Sebagai contoh, untuk membenamkan imej PNG sebagai URI data menggunakan pengekodan base64:

data:image/png;base64,<encoded-data>
Salin selepas log masuk

Contoh Kod

Fungsi PHP berikut mencipta URI data daripada fail imej binari:

function data_uri($file, $mime) 
{
  $contents = file_get_contents($file);
  $base64   = base64_encode($contents); 
  return ('data:' . $mime . ';base64,' . $base64);
}
Salin selepas log masuk

Untuk memaparkan imej daripada data binari, anda hanya boleh menggunakan URI data sebagai atribut src HTML elemen:

echo "<img src='" . data_uri('image.png', 'image/png') . "' alt='My Image' />";
Salin selepas log masuk

Kelebihan URI Data

Menggunakan URI data untuk imej menawarkan beberapa kelebihan:

  • Rangkaian Terkurang Permintaan: URI data membenamkan data imej terus ke dalam HTML, menghapuskan keperluan untuk tambahan Permintaan HTTP.
  • Pemuatan Imej Rentas Asal: URI Data boleh digunakan untuk memuatkan imej daripada domain yang berbeza, menyelesaikan isu CORS.
  • Peningkatan Prestasi: Dengan menghapuskan permintaan rangkaian tambahan dan I/O cakera, URI data boleh meningkatkan prestasi keseluruhan imej memuatkan.

Atas ialah kandungan terperinci Bagaimanakah saya boleh memaparkan imej daripada data binari dalam satu skrip tanpa menyimpannya ke cakera?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!