当前位置:Gxlcms > PHP教程 > php如何将base64编码保存到本地文件?

php如何将base64编码保存到本地文件?

时间:2021-07-01 10:21:17 帮助过:11人阅读

  1. 本地用C++对一个图片进行base64编码,经过post提交到web服务器上,php经过base64_decode解码后,保存后,图片并不正确。用16进制编辑器查看并对比源文件(本地源文件图片),发现保存后丢失了0d--回车符。

  2. 过程经历的问题,经过post传输_POST['data']取出来的数据对比之前的base64编码的数据+号变成了空格,用php的str_replace(...)替换回原来的,可以确定这个没有问题。

  3. 经过$img = base64_decode(...)解码后,返回的strlen($img)的长度和源文件的长度是一样的。无论是用for(...) fwrite(...);还是file_put_contents(...)都是丢失字节0d

待解决:见标题

已解决:打开文件流时有问题,过程都没错

回复内容:

  1. 本地用C++对一个图片进行base64编码,经过post提交到web服务器上,php经过base64_decode解码后,保存后,图片并不正确。用16进制编辑器查看并对比源文件(本地源文件图片),发现保存后丢失了0d--回车符。

  2. 过程经历的问题,经过post传输_POST['data']取出来的数据对比之前的base64编码的数据+号变成了空格,用php的str_replace(...)替换回原来的,可以确定这个没有问题。

  3. 经过$img = base64_decode(...)解码后,返回的strlen($img)的长度和源文件的长度是一样的。无论是用for(...) fwrite(...);还是file_put_contents(...)都是丢失字节0d

待解决:见标题

已解决:打开文件流时有问题,过程都没错

你在web端直接输出这个图片看看是否能正常显示呢,类似

人气教程排行