If, for example, your input
// Red dot graphic, stolen from Wikipedia $imgstr = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==';
Then you can do what you want with
// Grab the MIME type and the data with a regex for convenience if (!preg_match('/data:([^;]*);base64,(.*)/', $imgstr, $matches)) { die("error"); } // Decode the data $content = base64_decode($matches[2]); // Output the correct HTTP headers (may add more if you require them) header('Content-Type: '.$matches[1]); header('Content-Length: '.strlen($content)); // Output the actual image data echo $content; die;
source share