«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как я могу отображать двоичные изображения напрямую в одном скрипте, не сохраняя их на диск?

Как я могу отображать двоичные изображения напрямую в одном скрипте, не сохраняя их на диск?

Опубликовано 22 ноября 2024 г.
Просматривать:840

How can I display binary images directly in a single script without saving them to disk?

Отображать двоичные изображения в одном скрипте

Проблема:

Можно ли воссоздать и отображать изображения непосредственно из двоичных данных в тот же сценарий? Это включает обработку данных с помощью GD или аналогичных инструментов перед их отображением в теге изображения HTML. Цель состоит в том, чтобы избежать сохранения обработанных изображений на диск или использования внешних скриптов.

Решение:

Этого можно достичь, используя URI данных в атрибуте источника изображения. Формат URI данных:

data:[][;charset=""][;base64],

Эта функция PHP создает URI данных из файла:

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

Следующий код отображает изображение с использованием URI данных:

echo 'An elephant';

Использование:

Чтобы отображать обработанные двоичные данные изображения, вы можете использовать функцию data_uri и вывести полученный URI в качестве источника изображения следующим образом:

$imagedata1 = file_get_contents('assets/test.png');
$imagedata1 = process_using_gd_or_something($imagedata1);

echo 'Как я могу отображать двоичные изображения напрямую в одном скрипте, не сохраняя их на диск?';

Этот код отобразит обработанное изображение непосредственно из двоичные данные без использования внешних скриптов или дискового хранилища.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3