$path = ROOT_PATH . 'public/uploads/headimg'; $pic = base64_image_content($base64_image,$path); //圖片路徑 $type = str_replace('.','',strrchr($pic,'.')); //獲取圖片的類型 $image = str_replace('data:image/png;base64,', '', $base64_image); //base64轉換 $image = str_replace(' ', '+', $image); $image = base64_decode($image); $img_url = Oss::ossUploadFile64($image,$type,$pic,'pSignatureImg'); //上傳到oss上 //bases64圖片保存到本地路徑 $base64_image_content base64圖片 $path 保存圖片 public 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."/"; if(!file_exists($new_file)){ //檢查是否有該文件夾,如果沒有就創建,並給予最高權限 mkdir($new_file, 0777,true); } $new_file = $new_file.microtime(true).rand(0,999).".{$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; } }
