Skip to content

Instantly share code, notes, and snippets.

@boulama
Last active November 5, 2021 06:37
Show Gist options
  • Save boulama/87388f8467c1dc17e86d3a10a59e44f0 to your computer and use it in GitHub Desktop.
Save boulama/87388f8467c1dc17e86d3a10a59e44f0 to your computer and use it in GitHub Desktop.
simple php script that saves a base64 image to png and keeps the alpha channels.
<?php
// generate a random integer for our saved image name
$image_no=rand(0,9);
// our base 64 string
$base64String = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAADICAMAAABlASxnAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAABPlBMVEUAAAD/AAD/AAD/AAD/AAD/AAAAADMAADMuLmEzM2YzM2YAAAAAAACnQAD/YQAAADMzM2YAAAD/mQAAADMAADMICDtJSXwzM2YICBAAAACLUwD/mQD/mQAzM2YAADMAADMAADM5OWwzM2YzM2YAADMAABwAABoODkEAABoAABoAABoAADMAABoAABoAABgAACoAAAEAABoAAAEAAAEAABgAABoAABr/AAD/YQAAADMuLmEzM2YAAACLUwD/mQAXF0owMGNCQnVKSn0JCTxTU4ZmZplhYZRLS35YWItdXZBjY5ZBQXRGRnk8PG8ICDszM2ZERHdiYpU4OGsAABwAACcEBDcFBTgiIlUzM2Y0NGcAABoAACUgIFMAAB0AACEAACQJCTwODkEAAB8AABwAAC4AACoAABEAABkAAAEAABgbxDGTAAAAN3RSTlMActGYi7keoqKilIWi1bku6NG5NXSN8nSHi4uLZS4zRppnRiC5ubl0VHSzjUqis/cu6CbR0dG+Ls1rrwAAAAFiS0dEAIgFHUgAAAAHdElNRQfkBgYMOjIPTi/VAAACS0lEQVR42u3dZ1JVQRCAUUxgRuUp5oQJc1YwICgoZjGLignD/jfgCvqWMzXcefLOt4Cp7lP981bdvj5JkiRJkiRJUi+2YmXYqtqzdV2rr4WtqT1b1wUrIVgJwUoIVkKwEoKVEKyEYCUEKyFYCcFKCFZCsBKClRCshLoGq38gbu26wq1vGGTDxrBN18M2t4o1OBY3fqNwWxoG2Xoz7NbtsG2wYMGCBQsWLFiwYMGCBQsWLFiwYPU21lAnbPtE3J147cmpnHYMx+3cFbZ7T9je8lid+Hru5t3IvemcZhpe3Fd+bViwYMGCBQsWLFiwYMGCBQsWLFiwlgnW/gNhB4tj3X8QNhtjPXwUd+hw2Eh5rCNjOWViNfQ46+imn8QvDsOCBQsWLFiwYMGCBQsWLFiwYMGCBSu9p+Nxz7Kwns+EvfjPsZoq/rXyHCxYsGDBggULFixYsGDBggULFixYsGAtLdbRl2Gv8rBevwl7m4X1bi7ufatYxz6EzRc/uo+lj64pWLBgwYIFCxYsWLBgwYIFCxYsWLBgRX36HLaQh/Xla4sdbxWroW/Fj658HViwYNUOFixY1YMFC1b1YMGCVT1YsGBVD1ZdrBOjYSdjrO/zWf0oLnIq/kXXUHmshkazjq6pxeJYg62KwIIFCxYsWLBgwYIFCxYsWLBgwYK1TLBOnwk7+zPuV4y1sJjTuYG4/tpI/9D533F/St/jhdrbwoLVlcGCBat6sGDBqh4sWLCqBwsWrOrBgrU0XbwUd/lK4a7W3laSJEmSJEmSeqy/lh8cNisfRdAAAAArelRYdGRhdGU6Y3JlYXRlAAAImTMyMDLQNTADohBDIytTCytTINfcysAAAEGzBRbIHywCAAAAK3pUWHRkYXRlOm1vZGlmeQAACJkzMjAy0DUwA6IQQyMrUwsrUyDX3MrAAABBswUW6fRpwQAAAABJRU5ErkJggg==";
// the path where we need the image to be with the name
$path = "images/".$image_no.".png";
// since we just need the base 64 code, we strip out the "data:image/png;base64" part
$data = explode( ',', $base64String );
// we write an image file with the actual base 64 code in the index 1 of our exploded array
$save = file_put_contents($path,base64_decode($data[1]));
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment