【发布时间】:2016-08-18 16:57:52
【问题描述】:
对于我们的客户,我必须创建一个邮件备份系统来备份所有发送的内容(主题、正文、附件、标题...)
但我无法通过 curl 上传文件。
这是我目前的代码:
$filesBackup = array('api_key' => 'xxx', 'files' => array());
foreach ($attachment as $att) {
$filesBackup['files'][] = new \CURLFile($att[0]);
$request = curl_init('http://xxx/webhooks/uploadtos3.php');
curl_setopt($request, CURLOPT_POST, true);
curl_setopt($request, CURLOPT_SAFE_UPLOAD, false);
curl_setopt(
$request,
CURLOPT_POSTFIELDS, http_build_query($filesBackup));
curl_setopt($request, CURLOPT_RETURNTRANSFER, true);
curl_exec($request);
curl_close($request);
这里的问题是文件路径($att[0])如下:“http://xxx/uploads/zonnepanelen/file.pdf”
所以我在uploadtos3.php 收到的唯一东西就是这个数组:
array(3) {
["name"]=>
string(89) "http://xxx/uploads/zonnepanelen/file.pdf"
["mime"]=>
string(0) ""
["postname"]=>
string(0) ""
}
有没有人可以帮我解决这个问题?
非常感谢!
【问题讨论】:
-
请看cURLFile
-
我认为需要上传的文件应该在文件所在的同一路径
标签: php curl file-upload