在PHP中使用AmazonS3 UploadBuilder时如何设置存储类

在PHP中使用AmazonS3 UploadBuilder时如何设置存储类,php,file-upload,amazon-s3,Php,File Upload,Amazon S3,我正在使用PHPSDK2 for AmazonS3,特别是UploadBuilder类来执行文件的多部分并发上载。如果可以,如何设置要上载的文件的存储类?执行常规putObject时,可以设置文件所需的存储类。我希望使用减少的冗余而不是标准存储来存储我的文件。我可以用setOption设置这样的标题吗 setOption('x-amz-storage-class', 'REDUCED_REDUNDANCY') 从UploadBuilder的源代码来看,您似乎可以使用元数据进行设置。下面是一个从

我正在使用PHPSDK2 for AmazonS3,特别是UploadBuilder类来执行文件的多部分并发上载。如果可以,如何设置要上载的文件的存储类?执行常规putObject时,可以设置文件所需的存储类。我希望使用减少的冗余而不是标准存储来存储我的文件。我可以用setOption设置这样的标题吗

setOption('x-amz-storage-class', 'REDUCED_REDUNDANCY')
从UploadBuilder的源代码来看,您似乎可以使用元数据进行设置。下面是一个从源设置MD5头的示例:

// If an MD5 is specified, then add it to the custom headers of the request
// so that it will be returned when downloading the object from Amazon S3
if ($this->md5) {
    $params['Metadata']['x-amz-Content-MD5'] = $this->md5;
}
这意味着我会让它做这样的事情:

setOption('Metadata', array('x-amz-storage-class' => 'REDUCED_REDUNDANCY'))
有人能确认这是正确的还是我偏离了基准?

在中,它说该方法设置了“传递到初始CreateMultipartUpload操作的选项”。根据,您应该使用
StorageClass
param。因此,您应该能够使用
UploadBuilder
执行以下操作,以在多部分上载上设置存储类:


->setOption('StorageClass','REDUCED_REDUNDANCY')

在中,它表示该方法设置了“传递到初始CreateMultipartLoad操作的选项”。根据,您应该使用
StorageClass
param。因此,您应该能够使用
UploadBuilder
执行以下操作,以在多部分上载上设置存储类:


->setOption('StorageClass','REDUCED_REDUNDANCY')