php base64转换图片的方法

藏色散人
藏色散人原创
2023-03-07 21:06:013988浏览

php base64转换图片的方法:首先创建一个PHP示例文件;然后通过“file_put_contents('./test_base2.jpg', base64_decode($base64));”方法将base64字符串转换为图片即可。

本教程操作环境:windows7系统、PHP5.6版,该方法适用于所有品牌电脑。

推荐:《PHP视频教程

PHP 图片与base64相互转换

PHP 将图片转换为 base64 字符串格式:

<?php
//Filetype: JPEG,PNG,GIF 
 
$file = "encode.jpg"; //$file:图片地址
if($fp = fopen($file,"rb", 0)) 
{ 
    $gambar = fread($fp,filesize($file)); 
    fclose($fp); 
 
    //获取图片base64 
    $base64 = chunk_split(base64_encode($gambar)); 
    // 输出
    $encode = '<img src="data:image/jpg/png/gif;base64,' . $base64 .'" >'; 
    echo $encode; 
}     
?>

将base64字符串转换为图片:

//第一个参数图片保存路径以及图片名称 需注意图片后缀 linux请注意文件权限
//第二个参数为图片的base64字符串  ps:下方会贴出图片base64的格式 以及注意事项
 
file_put_contents('./test_base2.jpg', base64_decode($base64));

详解图片base64字符串:

//读取图片数据
$gambar = fread($fp,filesize($file)); 
//获取图片base64 
$base64 = chunk_split(base64_encode($gambar));
 
 
//$gambar->读取的是图片的数据流
//$base64->将图片数据流转换为base64

此时获取的图片base64字符串格式为:ps:每张图片获取的数据都是不一样的,这里只是一个例子

/9j/4AAQSkZJRgABAQEAkACQAAD/4QC....此处省略N多字符串......KKKAP/2Q==

以data开头,是展示图片而增加的图片头信息,所以我们只使用`$base64`的数据

data:image/jpg/png/gif;base64,/9j/4AAQSkZJRgABAQEAkACQAAD/4QC....此处省略N多字符串......KKKAP/2Q==

此外,我们也可以将一些字符串或者其他数据也追加到图片里面 并保存为图片

$base64 = chunk_split(base64_encode($gambar) .'#'. base64_encode('举个例子')); 
//将需要追加的数据也转换为base64格式,注意 【#】符号

更多编程相关知识,请访问:编程学习网站!!

以上就是php base64转换图片的方法的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。