管理作为base64字符串上载的文件

时间:2013-12-11 22:04:55

标签: php angularjs

我目前正在开发一个使用AngularJS进行前端的网站,以及一个使用Laravel框架(PHP5)作为后端的宁静Web服务;我目前面临一个问题,文件上传。我想上传一个非常简单的文件,文件输入和一些副本到一个服务器文件夹。

目前,我在AngularJS中使用的指令效果很好,并使用base64 url​​发送我的文件;我能够在我的PHP后端中获取此字符串,但无法将其转换为文件。例如,我希望能够获取文件名,ext,...并将其复制到服务器..

知道如何将base64转换为“文件对象”吗? (该解决方案是否专为Laravel和简单的PHP设计并不会让我烦恼。)

1 个答案:

答案 0 :(得分:0)

只需decode服务器上的基本64字符串,然后写入file即可。

示例如果图像位于表单图像数据中,并且数据是作为POST发送的:

file_put_contents('path/to/images/image.jpg', base_64_decode($_POST['image']));

我对laravel不太满意,但我认为在框架内部有更好的方法,而不是直接访问表格数据PHP的$ _POST数组。

要查找图片的文件类型,请查看finfo_buffer并查看如何使用您的案例here