PHP通过图片base64获取图片的格式及大小

180it 2022-03-06 AM 933℃ 0条

PHP通过图片base64获取图片的格式及大小

我是通过JQ截取图片后,将截取产生的图片base64图片放到隐藏域中,PHP获取POST值后,要验证图片格式和大小,顺便整理了一下函数。

function get_base64img_info($base64img,$type){
    if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64img, $result)){
     
        if ($type=='type'){
         
            $img_result = $result[2];
             
        }elseif ($type=='size'){
         
            $base_img = str_replace($result[1], '', $base64img);
            $base_img = str_replace('=','',$base_img);
            $img_len = strlen($base_img);
            $file_size = intval($img_len - ($img_len/8)*2);
            $img_result = number_format(($file_size/1024),2);//KB
             
        }
         
        return $img_result;
    }
}

调用方法:

$img_type=strtolower(get_base64img_info($img_data,'type'));//图片格式
$img_size=get_base64img_info($img_data,'size');//图片大小,单位KB

支付宝打赏支付宝打赏 微信打赏微信打赏

如果文章或资源对您有帮助,欢迎打赏作者。一路走来,感谢有您!

标签: none

PHP通过图片base64获取图片的格式及大小