Javascript Angularjs将文件输入类型的post表单发送到php

Javascript Angularjs将文件输入类型的post表单发送到php,javascript,php,angularjs,forms,Javascript,Php,Angularjs,Forms,我有一个类似的表格: <form> ... <input type="text" ng-model="data.textInput"> <input type="file" ng-model="data.imageInput"> ... <form> 然后,在我的php文件中,我可以访问如下文本数据: $_POST = json_decode(file_get_contents('php://input'),

我有一个类似的表格:

<form>
    ...

    <input type="text" ng-model="data.textInput">
    <input type="file" ng-model="data.imageInput">

    ...
<form>
然后,在我的php文件中,我可以访问如下文本数据:

$_POST = json_decode(file_get_contents('php://input'), true);

echo $_POST['textInput'];
到目前为止,一切都正常工作,但问题是访问文件输入类型数据。我见过一些例子,包括在调用http请求之前上载文件,但它们没有显示如何在服务器中处理请求

我想实现的是使用
base64\u encode
对文件进行编码,以便将其上载到数据库中。当我发布一个没有angularjs的表单时,我使用这行代码对文件进行编码,然后将其上传到db中:

$imageInput= base64_encode(file_get_contents($_FILES['imageInput']['tmp_name']));

如何使用angularjs实现这一点?

需要使用FormData API并为ajax设置特殊配置。这不难研究
angular upload
Ok,但是如何在php文件中处理这个问题呢?如何在base64中编码?如果使用FormData API,则无需对base64执行任何操作。。。将在php中使用
$\u文件
。数据不会作为json发送,您不希望
$http
进行任何转换。。。请调查一下。
$imageInput= base64_encode(file_get_contents($_FILES['imageInput']['tmp_name']));