S3-> getObjectInfo()以什么格式返回文件的修改时间?

时间:2013-11-19 14:32:49

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

我正在使用getObjectInfo($bucket,$fileUri)来获取S3上的文件的详细信息。 现在,当我执行该函数时,我得到一个数组结果

  Array
  (
    [time] => 1384861952
    [hash] => c3c40e7df05a9d622bab85917d52abda
    [type] => application/pdf
    [size] => 331246
  )
  Array
 (
    [time] => 1384864779
    [hash] => f5cb8cf703e43f2929bef44286cd1e60
    [type] => application/pdf
    [size] => 503772
  )

我理解size参数将以字节为单位,我必须将其转换为MB或KB.But time属性有点令人困惑。我不确定它是否是最后一次修改时间,因为名称不是这样说。
此外,SDK(我使用 PHP SDK )函数没有函数实际返回的列表。这是函数。

   /**
* Get object information
*
* @param string $bucket Bucket name
* @param string $uri Object URI
* @param boolean $returnInfo Return response information
* @return mixed | false
*/
public static function getObjectInfo($bucket, $uri, $returnInfo = true)
{
    $rest = new S3Request('HEAD', $bucket, $uri, self::$endpoint);
    $rest = $rest->getResponse();
    if ($rest->error === false && ($rest->code !== 200 && $rest->code !== 404))
        $rest->error = array('code' => $rest->code, 'message' => 'Unexpected HTTP status');
    if ($rest->error !== false)
    {
        self::__triggerError(sprintf("S3::getObjectInfo({$bucket}, {$uri}): [%s] %s",
        $rest->error['code'], $rest->error['message']), __FILE__, __LINE__);
        return false;
    }
    return $rest->code == 200 ? $returnInfo ? $rest->headers : true : false;
}

它是否实际返回显示在S3仪表板上的修改时间?或者它意味着别的什么?我需要帮助才能理解它。如果是修改时间,格式是什么(在仪表板上添加 GMT +差异时间)?documentation也是不太清楚。
谢谢你的时间。

1 个答案:

答案 0 :(得分:1)

接近时间的数值是纪元时间,只需将其提交给日期函数并指定格式:

<?php
echo date("Y-m-d H:i:s", NUMBER_HERE);
?>

<?php    
echo date("Y-m-d H:i:s", 1384861952);
echo date("Y-m-d H:i:s", 1384864779);
?>

你的两个号码返回

2013-11-19 06:52:32
2013-11-19 07:39:39