Maison >développement back-end >Problème PHP >Comment convertir des images en base64 en php ?
En PHP, vous pouvez utiliser les fonctions base64_encode() et chunk_split() pour encoder en base64 les fichiers image et les convertir au format base64. Le format de syntaxe est "chunk_split(base64_encode(fread(file, size)".
Recommandé : "Tutoriel vidéo PHP"
PHP prend très bien en charge Base64, avec base64_encode et base64_decode intégrés Responsable de l'encodage Base64 et du décodage des images
Pour l'encodage, il suffit de lire le flux d'images puis d'utiliser base64_encode pour l'encoder
/** * 获取图片的Base64编码(不支持url) * @date 2017-02-20 19:41:22 * * @param $img_file 传入本地图片地址 * * @return string */ function imgToBase64($img_file) { $img_base64 = ''; if (file_exists($img_file)) { $app_img_file = $img_file; // 图片路径 $img_info = getimagesize($app_img_file); // 取得图片的大小,类型等 //echo '<pre class="brush:php;toolbar:false">' . print_r($img_info, true) . '
Le décodage est un peu plus gênant. après avoir encodé l'image dans une chaîne base64, les caractères data:image/png;base64 seront ajoutés à l'encodage, qui est à l'origine utilisé pour l'identification base64. Cependant, s'il est directement mis en PHP et décodé à l'aide de la fonction base64_decode, il. sera finalement enregistré. Le format du fichier image est endommagé et la solution consiste d'abord à supprimer cette chaîne de caractères :
$base64_string= explode(',', $base64_string); //截取data:image/png;base64, 这个逗号后的字符 $data= base64_decode($base64_string[1]); //对截取后的字符使用base64_decode进行解码 file_put_contents($url, $data); //写入文件并保存
Pour plus de connaissances sur la programmation, veuillez visiter : Introduction à la programmation !
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!