0

我正在使用 PHP 将图像上传到亚马逊 s3。当我上传文件时,我想将有关它的信息存储在我的数据库中,以便在需要获取有关文件的信息(文件名、大小、类型)时发出更少的 API 请求

创建新对象:

    //initiate the class
    $s3 = new AmazonS3();

    $bucket = 'my_bucket';

    //upload the file           
    $response = $s3->create_object($bucket, $filename, array(
                    'fileUpload' => $filepath,
                    'acl' => AmazonS3::ACL_PUBLIC,
                    'contentType' => $file_type,
                    'storage'     => AmazonS3::STORAGE_REDUCED,
                    'headers'     => array( // raw headers
                          'Cache-Control' => 'max-age=315360000', 
                          'Expires' => gmdate("D, d M Y H:i:s T", strtotime("+5 years"))
                    )

    ));                 

    var_dump($response->isOK()); 

上传成功后,是否可以在$response不发出新的 GET 请求的情况下从变量中获取文件名、大小和文件类型?

4

2 回答 2

1

这些值不在 中$response,但您不需要它们。你已经知道你想知道的一切:

  • 文件名为$filename.
  • 文件大小可以由 确定filesize($filepath)
  • 文件类型是$file_type.
于 2012-09-20T04:19:44.887 回答
0

$response我可以通过使用访问返回的数组header

例如获取文件大小

$response->header['_info']['size_upload']
于 2012-09-21T05:02:51.647 回答