PHP: Validando imagens em Base64
Olá Gente
Quando começamos a trabalhar com imagens em base64 precisamos ficar muito atentos a segurança, e sempre validar se esta imagem realmente é uma imagem válida.
Para isto iremos utilizar duas funções do php:
imagecreatefromstring
Esta função ira criar uma referencia de uma imagem, com base em uma string
getimagesizefromstring
Esta função retorna informações da imagem (Entre elas: Tamanho e Tipo)
Então vamos para um exemplo, temos a imagem abaixo, esta imagem esta codificada em base64:
A primeira coisa a fazer é remover a indicação “data:image/png;”:
Agora temos apenas a imagem, vamos decodificar ela:
Então, temos a imagem decodificada, vamos fazer o primeiro teste:
Quando o php não consegue criar uma imagem com base na string a função não retorna nada.
Já sabemos que a string realmente é uma imagem, então, para garantir, iremos checar se esta imagem possui informações válidas (Tamanho + mime_type):
Fácil né? ❤ Vamos agrupar estas etapas em uma função:
Por hoje é só, pessoal! 🛑
Até mais! 👋