Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bolehkah Imej Dipaparkan Terus daripada Data Binari Menggunakan URI Data?

Bolehkah Imej Dipaparkan Terus daripada Data Binari Menggunakan URI Data?

Barbara Streisand
Barbara Streisandasal
2024-11-07 05:56:02361semak imbas

Can Images Be Displayed Directly from Binary Data Using Data URIs?

Mencipta dan Memaparkan Imej daripada Data Perduaan

Bolehkah anda mencipta dan memaparkan imej daripada data binari secara langsung dalam satu skrip? Soalan ini berpunca daripada keinginan untuk mengendalikan pemprosesan dan paparan imej tanpa bergantung pada skrip luaran atau menulis imej ke cakera.

Jawapannya terletak pada penggunaan URI data. URI data mengikut format tertentu:

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

Jenis MIME menentukan format data, seperti imej/png atau imej/jpeg. Charset dan base64 adalah pilihan. Data sebenar diwakili dalam pengekodan base64.

Untuk menjana URI data daripada data binari, anda boleh menggunakan fungsi seperti berikut:

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

Dengan fungsi ini, anda boleh menggunakan URI data sebagai atribut src imej:

<img src="<?php echo data_uri('elephant.png','image/png'); ?>" alt="An elephant" />

Atas ialah kandungan terperinci Bolehkah Imej Dipaparkan Terus daripada Data Binari Menggunakan URI Data?. 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