PHP上传到AWS S3会产生错误的目标路径

时间:2018-02-28 14:58:00

标签: php codeigniter amazon-web-services amazon-s3

我想使用PHP将图像文件上传到我的S3存储。我使用这个帮助库:https://github.com/psugand/CodeIgniter-S3

这是我的PHP代码:

$this->s3->putObject($this->s3->inputFile($tmp), 'dreamboks-assets-2017', '/test_example/' . basename($_FILES["userfile"]['tmp_name']), S3::ACL_PUBLIC_READ);

问题是S3总是在我的欲望目录( test_example / )之前创建一个空目录。

截图: Screenshot S3

如何避免不需要的空目录?我的目标路径参数有问题吗?

1 个答案:

答案 0 :(得分:0)

您需要使用相对路径。您正在使用的API包装器可能会被前导/抛弃。所以像这样使用它:

$this->s3->putObject(
    $this->s3->inputFile($tmp), 
    'dreamboks-assets-2017', 
    'test_example/' . basename($_FILES["userfile"]['tmp_name']), // relative path
    S3::ACL_PUBLIC_READ
);

稍微更改了格式以强调更改