PHP – Convertir Base64 a imagen

Resumen: en este post te mostraré a obtener una imagen como archivo a partir de su representación en base 64. Es decir, lo contrario a lo que hicimos en un post anterior.

Lo que vamos a hacer es crear un archivo de imagen a partir de una cadena o string en formato base 64.

Base 64 a imagen usando PHP

Debemos tener la cadena en base64, obtenida de cualquier lugar.

Yo la tengo definida como una variable en mi código, pero recuerda que puede ser obtenida desde una base de datos o un archivo, entre otros medios.

Después de eso, escribimos esa cadena en base64 dentro de una imagen usando file_put_contents pero con un pequeño truco: decodificamos la cadena usando base64_decode.

Recuerda que debes indicar la ruta de la imagen de salida como primer argumento a file_put_contents. La función devuelve el número de bytes que fueron escritos.

Es tu responsabilidad saber si la imagen es PNG, JPG o de otro formato. Para ello, al codificarla o guardarla puedes ver la extensión del archivo.

Puedes probar el ejemplo aquí. Al final, la imagen generada a partir de esa cadena en base 64 es esta.