利用base64对图片进行编码及解码

本文介绍了如何使用PHP通过Base64编码处理图片,以便于在JSON中传输。主要步骤包括图片编码成Base64字符串,通过JSON发送,接收方解码并显示图片。文中提到了preg_match()函数用于正则匹配,file_put_contents()函数用于写入文件,这两个在处理过程中起到关键作用。
摘要由CSDN通过智能技术生成

试图将图片通过json进行传输,这个时候就想到利用base64编码的方法来图片。主要步骤有

1、对图片文件进行编码,转换为base64编码的格式,及一长串字符;

2、可将字符通过json进行传送;

3、目的方接收json数组,取出编码字符串,并进行解码,显示图片

该方法难点主要还是在于对图片的编解码处理,以下是用PHP实现的编解码处理代码

<?php
        $image_file = './uploads/14391214729290.jpg';

        //读取图片文件,并转换成base64编码格式
        $image_info = getimagesize($image_file);
        $base64_image_content = "data:{$image_info['mime']};base64," . chunk_split(base64_encode(file_get_contents($image_file)));
        //echo $base64_image_content;

        //将base64字符串解码并保存为原来图片格式
        if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){
            $type = $result[2];
            $new_file = "./newfile.{$type}";
            if (file_put_contents($new_file, base64_decode(str_replace($result[1], '
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值