"If a worker wants to do his job well, he must first sharpen his tools." - Confucius, "The Analects of Confucius. Lu Linggong"
Front page > Programming > How can I display binary images directly in a single script without saving them to disk?

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

Published on 2024-11-22
Browse:703

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

Display Binary Images in a Single Script

Problem:

Can images be recreated and displayed directly from binary data in the same script? This involves processing the data with GD or similar tools before displaying it in an HTML image tag. The goal is to avoid saving the processed images to disk or using external scripts.

Solution:

This can be achieved using data URIs in the image source attribute. The data URI format is:

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

This PHP function creates a data URI from a file:

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

The following code displays an image using a data URI:

echo 'An elephant';

Usage:

To display processed binary image data, you can use the data_uri function and output the resulting URI as the image source like this:

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

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

This code will display the processed image directly from the binary data without using external scripts or disk storage.

Latest tutorial More>

Disclaimer: All resources provided are partly from the Internet. If there is any infringement of your copyright or other rights and interests, please explain the detailed reasons and provide proof of copyright or rights and interests and then send it to the email: [email protected] We will handle it for you as soon as possible.

Copyright© 2022 湘ICP备2022001581号-3