php - 适用于 PHP 的 AWS 开发工具包 - 如何获取文件的创建日期

标签 php amazon-web-services amazon-s3

我有工作代码,它返回 s3 存储桶下的所有文件。我必须获取今天上传的文件以进行进一步处理。

获取文件的代码:

use Aws\S3\S3Client;
$s3Client = S3Client::factory(array(
    'region'  => 'us-east-1',
    'version' => '2006-03-01',
    'credentials' => array(
    'key'    => 'XXXX',
    'secret' => 'YYYYYYYY'

)
));

$iterator = $s3Client->getIterator('ListObjects', array(
    'Bucket' => 'mybucket',    
    'Prefix' => 'adityamusic',
    'Suffix' => '.xlsx',
    ), array(
    'limit'     => 999,
    'page_size' => 100
));

foreach ($iterator as $object) {
    print_r($object['LastModified']); 
    print_r($object['LastModified']['date']);   //this gives error
}
print_r($object['LastModified'])输出为:
Array
(
   [Key] => mymusic/
   [LastModified] => Aws\Api\DateTimeResult Object
       (
           [date] => 2016-08-03 06:20:31
           [timezone_type] => 2
           [timezone] => Z
       )

   [ETag] => "sadfasdf2342"
   [Size] => 0
   [StorageClass] => STANDARD
   [Owner] => Array
       (
           [DisplayName] => test
           [ID] => asdfasdfasdf
       )

)

我无法访问日期 key 。

最佳答案

LastModifiedAws\Api\DateTimeResult 的一个实例类,自 DateTimeResult扩展 \DateTime对象,只需使用 format方法与您通常在使用标准 DateTime 对象时所做的一样。
echo $object['LastModified']->format(\DateTime::ISO8601)
阅读 here更多格式选项。

附言$object['LastModified']->date将无法工作,因为它不是为访问而设计的 directly .

关于php - 适用于 PHP 的 AWS 开发工具包 - 如何获取文件的创建日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38818860/

相关文章:

php - 语法错误,意外 '$alert' (T_VARIABLE)

javascript - 向用户提供 javascript 代码,而不是显示 Web 应用程序的完整代码?

ruby-on-rails - Nginx 错误 : client intended to send too large body

amazon-web-services - 为什么我在 Terraform 中尝试 auto_accept vpc 对等互连时收到权限错误?

python - 如何让 Python AWS Lambda 打开作为电子邮件对象存储在 S3 中的电子邮件

ios - Safari 或 IOS 中视频的 aws-sdk getSignedUrl 不起作用

php - AWS S3 PHP SDK 2 Copy an object to another bucket 错误 'Bad request' 400

php - 在一个php脚本中使用多个数据库

php - 在 Php 中执行 linux echo 命令 (.sh)

amazon-web-services - Route 53 将不同路径指向不同的 s3 存储桶