PHP 将Base64图片保存到 Sae storage
<?php $file_dir='tu/'.date("Y/m/d").'/'; $fileName=create_guid(); $storage = new SaeStorage(); $domain = 'uploads'; $destFileName = $file_dir.$fileName; //$srcFileName = $tempFile; $attr = array('encoding'=>'gzip'); //保存base64字符串为图片 //匹配出图片的格式 $base64_image_content=$_REQUEST["urls"]; if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){ $type = $result[2]; $ex_file = ".{$type}"; $destFileName=$destFileName.$ex_file; //echo str_replace($result[1], '', $base64_image_content); $file_content=base64_decode(str_replace($result[1], '', $base64_image_content)); //$result = $storage->upload($domain,$destFileName,$file_content); $storage->write( $domain , $destFileName , $file_content ); $result=$storage->getUrl($domain,$destFileName); if(!$result) { //失败 echo ''; }else{ //成功 echo $result; } }else{ echo $base64_image_content; } function create_guid() { $charid = strtoupper(md5(uniqid(mt_rand(), true))); $hyphen = chr(45);// "-" $uuid =''// chr(123)// "{" .substr($charid, 0, 8).$hyphen .substr($charid, 8, 4).$hyphen .substr($charid,12, 4).$hyphen .substr($charid,16, 4).$hyphen .substr($charid,20,12); //.chr(125);// "}" return $uuid; } ?>