鍍金池/ 問答/PHP  網(wǎng)絡(luò)安全/ php basr64轉(zhuǎn)圖片的問題

php basr64轉(zhuǎn)圖片的問題

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
回答
編輯回答
生性

圖片描述

圖片描述

測試沒問題,看看Ajax是否傳遞過來了

2017年9月14日 00:12
編輯回答
胭脂淚

我執(zhí)行沒問題啊

2017年6月18日 22:10
編輯回答
萌二代

沒毛病 能夠正常執(zhí)行

2017年10月13日 06:50