我将图像从iOS上传到cakephp,将其编码为base 64 这是我在iOS上的代码:
UIImage *image = [info valueForKey:UIImagePickerControllerOriginalImage];
NSData *imageData = UIImageJPEGRepresentation(image, 1.0);
NSString *encodedString = [imageData base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
modelMFront.text = encodedString;
然后我把蛋糕上的图像拿来并试图保存:
$filename_path = 'test'.".jpg";
$decoded=base64_decode($this->request->data['model_mfront']);
file_put_contents(WWW_ROOT.$filename_path,$decoded);
问题是图像已损坏
http://imgur.com/a/LESJ3
任何想法如何解决这个问题?!
答案 0 :(得分:0)
我修好了。问题在于我对图像进行编码时的空间,所以我不得不用PHP中的+替换空格
$filename_path = 'test'.".jpg";
$img = $this->request->data['model_mfront'];
$img = str_replace(' ','+',$img);
$decoded=base64_decode($img);
file_put_contents(WWW_ROOT.$filename_path,$decoded);