Comment PHP convertit le contenu en images : 1. Extrayez les données requises pour le stockage des dataurl via des expressions régulières, puis affichez-les directement sur la page ; 2. Utilisez les méthodes substr et strpos pour enregistrer l'image localement.
L'environnement d'exploitation de cet article : système windows7, version PHP7.1, ordinateur DELL G3
Comment php convertit-il le contenu en images ? PHP convertit dataurl en méthode 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 l'image est la suivante
$imgstr = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==';
Méthode 1 :
Extraire les données requises pour le stockage de l'url 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 );
Apprentissage recommandé : "Tutoriel vidéo PHP"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!