php将图片转为base64的方法

  介绍

这篇文章主要介绍php将图片转为base64的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

php将图片转为base64的方法:首先读取图片流,然后使用“base64_encode”函数进行进行编码即可将图片转为base64。

 php将图片转为base64的方法

php保存base64图片base64_decode的问题

php对base64的支持非常好,有内置的base64_encode与base64_decode负责图片的base64编码与解码。

编码上,只要将图片流读取到,而后使用base64_encode进行进行编码即可得到。

/* *   *获取图片的Base64编码(不支持url)   * @date 2017-02-20 19:41:22   *   * @param $ img_file传入本地图片地址   *   * @return字符串   */函数imgToBase64 (img_file美元){   $ img_base64=& # 39; & # 39;;   如果(file_exists (img_file美元)){   app_img_file=img_file美元;//图片路径   (img_info=getimagesize美元app_img_file);//取得图片的大小,类型等//echo & # 39; & lt; pre> & # 39;。print_r (img_info美元,真的)。& # 39;& lt;/pre> & lt; br> & # 39;;   $ fp=fopen (app_img_file美元,“r");//图片是否可读权限   如果美元(fp) {   (文件大?文件大小美元app_img_file);   $内容=从文件中读(fp,文件大小美元);   美元file_content=chunk_split (base64_encode(内容)美元);//base64编码   开关($ img_info[2]){//判读图片类型   案例1:$ img_type=癵if";   打破;   案例2:$ img_type=癹pg";   打破;   案例3:$ img_type=皃ng";   打破;   }   $ img_base64=& # 39;数据:图像/& # 39;。img_type美元。& # 39;;base64 & # 39;。file_content美元;//合成图片的base64编码   }   文件关闭(fp);   }   返回img_base64美元;//返回图片的base64   }//调用使用的方法   $ img_dir=目录名(__FILE__)。& # 39;11213223./上传/img/jpg # 39;;   (img_base64=imgToBase64美元img_dir);   回声& # 39;& lt; img src=https://www.yisu.com/zixun/薄mg_base64美元。“>”;//图片形式展示   回声的<人力资源>;   echo $ img_base64;//输出Base64编码

而解码就略微麻烦一点,究其原因在于把图片编码成Base64字符串后,编码内会加入这些字符数据:图像/png; Base64,本来是用于Base64进行识别的。但是如果直接放到php里用base64_decode函数解码会导致最终保存的图片文件格式损坏,而解决方法就是先去掉这一串字符:

$ base64_string=爆炸(& # 39;& # 39;base64_string美元);//截取数据:图像/png; base64,这个逗号后的字符   (data=https://www.yisu.com/zixun/base64_decode美元base64_string [1]);//对截取后的字符使用base64_decode进行解码   url,美元写入数据);//写入文件并保存

以上是php将图片转为base64的方法的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

php将图片转为base64的方法