AWS S3 PHP可以直接将文件上传到存储桶中的文件夹

时间:2012-09-19 08:46:29

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

使用php sdk将文件直接上传到AWS S3中的文件夹的语法是什么?

我使用以下方式成功上传到了一个水桶:

$response = $s3->create_object($bucket, $file_name, array('fileUpload' => $file_path))

TX!

3 个答案:

答案 0 :(得分:8)

试试这种方式

$s3->create_object($bucket, 'folder/filename', $options)

答案 1 :(得分:1)

只需做一件事,添加“ path /” 例如:如果存储桶中有一个文件夹“ videos”,则必须在“ key” =>“ videos / video-name-here”中添加这样的路径。

try {
    // Upload data.
$result = $s3Client->putObject([
    'Bucket' => bucket-name,
    'Key'    => 'videos/video-name', //add path here
    'Body'   => fopen($video, 'r'),
    'ACL'    => 'public-read'
]);
print_r($result['ObjectURL']);

} catch (S3Exception $e) {
    echo $e->getMessage() . PHP_EOL;
}

答案 2 :(得分:0)

这是您可以尝试的另一种方式

    $this->Aws->bucket = 'bucket'
    $old_file = $dir. '/'.old_file_name;       
    $new_file = $dir. '/'.new_file_name;
    $file_permission = 'private';
    $this->Aws->upload($old_file , $new_file , $file_permission);