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

  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

待解决:见标题

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

阅读 6.5k
1 个回答

你在web端直接输出这个图片看看是否能正常显示呢,类似<img src="data:image/png;base64,这里是base64码" />

推荐问题
宣传栏