我是通过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