1.在網(wǎng)上找了個base64轉(zhuǎn)圖片的方法,網(wǎng)上的方法幾乎都是基于這個來了,但是我從ajax提交過來的base64數(shù)據(jù)執(zhí)行這個方法第一個判斷“匹配出圖片的格式”,正則匹配不到,$result是空的,base64數(shù)據(jù)是沒問題的,我返回到客戶端放到img標(biāo)簽是可以正常顯示的,并且在在線base64轉(zhuǎn)圖片的工具也能正常轉(zhuǎn)換,求大神給看看哪里出的問題。
/* base64格式編碼轉(zhuǎn)換為圖片并保存對應(yīng)文件夾 */
function base64_image_content($base64_image_content,$path){
//匹配出圖片的格式
if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){
$type = $result[2];
$new_file = $path."/".date('Ymd',time())."/";
if(!file_exists($new_file)){
//檢查是否有該文件夾,如果沒有就創(chuàng)建,并給予最高權(quán)限
mkdir($new_file, 0700);
}
$new_file = $new_file.time().".{$type}";
if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $base64_image_content)))){
return '/'.$new_file;
}else{
return false;
}
}else{
return false;
}
}
base64開頭部分?jǐn)?shù)據(jù),太長了就不放了
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfQAAAH0CAYAAADL1t+KAAAgAElEQVR4Xuy9aZMd15EleGJ/+8s9E4l9IUEBXCVSpSpVl6q758PMD5r/1GZtNm1TPd1lraqWSqpSSRQ3iRJJccVCrLm/PfYYc/d7IyITSRKEkASQug8WeFu8GxEekXGuux8/bv3fdyYFzMNYwFjAWMBYwFjAWOCZtoBlAP2ZPn9m540FjAWMBYwFjAXYAgbQzYVgLGAsYCxgLGAscAwsYAD9GJxEcwjGAsYCxgLGAsYCBtDNNWAsYCxgLGAsYCxwDCxgAP0YnERzCMYCxgLGAsYCxgIG0M01YCxgLGAsYCxgLHAMLGAA/RicRHMIxgLGAsYCxgLGAgbQzTVgLGAsYCxgLGAscAwsYAD9GJxEcwjGAsYCxgLGAsYCBtDNNWAsYCxgLGAsYCxwDCxgAP0YnERzCMYCxgLGAsYCxgIG0M01YCxgLGAsYCxgLHAMLGAA/RicRHMIxgLGAsYCxgLGAgbQzTVgLGAsYCxgLGAscAwsYAD9GJxEcwjGAsYCxgLGAsYCBtDNNWAsYCxgLGAsYCxwDCxgAP0YnERzCMYCxgLGAsYCxgIG0M01YCxgLGAsYCxgLHAMLGAA/RicRHMIxgLGAsYCxgLGAgbQzTVgLGAsYCxgLGAscAwsYAD9GJxEcwjGA
- 3 回答
- 0 關(guān)注
- 366 瀏覽
添加回答
舉報
0/150
提交
取消