PHP的圖片轉base64,base64圖片轉換為圖片並儲存程式碼
阿新 • • 發佈:2019-01-11
打卡記錄
1. 圖片轉base64程式碼
/*圖片轉換為 base64格式編碼*/ $img = 'images/avatar.jpg'; $base64_img = base64EncodeImage($img); echo '<img src="' . $base64_img . '" />'; function base64EncodeImage ($image_file) { $base64_image = ''; $image_info = getimagesize($image_file); $image_data = fread(fopen($image_file, 'r'), filesize($image_file)); $base64_image = 'data:' . $image_info['mime'] . ';base64,' . chunk_split(base64_encode($image_data)); return $base64_image; }
2. 接收base64圖片並儲存
/* base64格式編碼轉換為圖片並儲存對應資料夾 */ 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)){ //檢查是否有該資料夾,如果沒有就建立,並給予最高許可權 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; } } echo base64_image_content($base64_img,"images");