/**
* 处理图片base64流
*/
public function processImg()
{
$base64_image_content = $_POSt['image_url'];
if (preg_match('/^(data:\s*image\/(\w+);base64,)/',$base64_image_content,$result)){
$type = $result[2];//图片后缀
$new_file = $_SERVER['DOCUMENT_ROOT'].'/upload/';
if (!file_exists($new_file)) {
//检查是否有该文件夹,如果没有就创建,并给予最高权限
mkdir($new_file, 0700);
}
$filename = time() . '_' . uniqid() . ".{$type}"; //文件名
$new_file = $new_file . $filename;
//写入操作
if(file_put_contents($new_file, base64_decode(str_replace($result[1], '', $base64_image_content)))) {
//这里运用了阿里云的图片上传
$this->load->library('AliUpload');
$url = $this->aliupload->uploadVideo($filename,$new_file);
}
}
return $url;
}
特别注意的是接收base64的图片流的时候用$_POST[]接收流,用框架自带的接收流有可能会被编译而取不到正确的流