base64图片上传,支持图片类型

function  base64img($str){

static $arrurl=array();
$arr=explode('#', $str);
foreach ($arr as $content) {
        if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $content, $result)){
         $type = $result[2];

         //创建文件名称
         $new_file = md5(uniqid(microtime(true),true)).".{$type}";

         //创建图片保存文件夹
         $dir = date('Y-m-d', time()); 
         $path="./Uploads/".$dir;
           if(is_dir($path)){  
                $path=$path;
            }else{  
                mkdir($path,0777,true);  
                 $path=$path; 
            }  

        //新的文件路径
         $new_file=$path.'/'.$new_file;

        }

//保存文件
 if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $content)))){   
       $arrurl[]=ltrim($new_file,'.');
   }

}

return $arrurl;

}



<?php header('Content-type:text/html;charset=utf-8'); //读取图片文件,转换成base64编码格式 $image_file = './4296762_165319032930_2.jpg'; $image_info = getimagesize($image_file); $base64_image_content = "data:{$image_info['mime']};base64," . chunk_split(base64_encode(file_get_contents($image_file))); //保存base64字符串为图片 //匹配出图片的格式 if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){ $type = $result[2]; $new_file = "./test.{$type}"; if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $base64_image_content)))){ echo '新文件保存成功:', $new_file; } } ?>

<img src="<?php echo $base64_image_content;?>" />

转载于:https://my.oschina.net/oneboi/blog/795512

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值