Maison >php教程 >PHP开发 >Résumé PHP de la conversion de l'url de données en méthode d'image image

Résumé PHP de la conversion de l'url de données en méthode d'image image

高洛峰
高洛峰original
2016-12-27 09:42:071151parcourir

Méthode PHP pour convertir dataurl en image image

L'image générée à l'aide de canvas utilise dataurl PHP ne peut pas l'enregistrer directement sur l'ordinateur local via la méthode file_put_contents, elle doit donc être transcodée.

L'URL de données de l'image est la suivante

$imgstr = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJ ggg==' ;

Méthode 1 :

Extraire les données nécessaires au stockage des dataurl via des expressions régulières, puis affichez-les directement sur la page

if (!preg_match('/data:([^;]*);base64,(.*)/', $imgstr, $matches)) {
  die("error");
}
  
$content = base64_decode($matches[2]);
header('Content-Type: '.$matches[1]);
header('Content-Length: '.strlen($content));
  
echo $content;
die;

Méthode 2 :

Si vous souhaitez simplement enregistrez l'image localement, vous pouvez utiliser les méthodes substr et strpos

$imgdata = substr($imgstr,strpos($imgstr,",") + 1);
$decodedData = base64_decode($imgdata);
file_put_contents('11.png',$decodedData );

Merci d'avoir lu, j'espère que cela pourra aider tout le monde, merci pour votre soutien à ce site !

Pour plus d'articles liés à PHP sur la méthode de conversion de dataurl en image image, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn