使用VichUploaderBundle将图像上传到amazon S3

时间:2015-10-13 12:57:49

标签: php symfony file-upload amazon-s3 vichuploaderbundle

我正在使用VichUploaderBundle将图像上传到symfony-2中的AmazonS3。

我已按照此文档https://github.com/dustin10/VichUploaderBundle/blob/master/Resources/doc/index.md创建了我的实体类。

所以我在实体中有一个setter方法

/**
 * @param UploadedFile $file
 */
public function setFile(File $file = null)
{
    $this->file = $file;
    $this->updated = new \DateTime();
}

客户端(这是一个Web应用程序)将以base_64格式发送图像。 所以我不明白我将如何从该字符串中获取FILE对象? (由于setter方法的参数是FILE)

2 个答案:

答案 0 :(得分:0)

好的,首先你需要将图像保存到一个临时文件 - 这是一个解决方案:How to save a PNG image server-side, from a base64 data string

然后你需要使用该文件创建UploadedFile的实例,有点像这样的例子:https://github.com/dustin10/VichUploaderBundle/issues/203

然后将此UploadedFile发送到您的setFile()方法。

答案 1 :(得分:0)

您可以使用hshn/base64-encoded-file库中的$("#sd").datepicker( 'getDate' )类:

UploadedBase64EncodedFile