如何创建人类可读的时间戳?

时间:2013-11-28 05:20:54

标签: php timestamp unix-timestamp

这是我目前的PHP程序:

$dateStamp = $_SERVER['REQUEST_TIME'];

我稍后会记录。

结果是$dateStamp变量包含如下数字:

1385615749

这是一个Unix时间戳,但我希望它包含人类可读日期,包括小时,分钟,秒,日期,月份和年份。

所以我需要一个将其转换为人类可读日期的函数。

我该怎么做?

还有其他类似的问题但不完全像这样。我想要最简单的解决方案。

6 个答案:

答案 0 :(得分:22)

此号码称为Unix time。像date()这样的函数可以接受它作为可选的第二个参数来在可读时间格式化它。

示例:

echo date('Y-m-d H:i:s', $_SERVER['REQUEST_TIME']);

如果省略第二个参数,将使用time()的当前值。

echo date('Y-m-d H:i:s');

答案 1 :(得分:2)

将时间戳转换为人类可读格式的功能方法如下

function convertDateTime($unixTime) {
   $dt = new DateTime("@$unixTime");
   return $dt->format('Y-m-d H:i:s');
}

$dateVarName = convertDateTime(1385615749);

echo $dateVarName;

输出: -

2013-11-28 05:15:49

Working Demo

答案 2 :(得分:1)

<?php
$date = new DateTime();

$dateStamp = $_SERVER['REQUEST_TIME'];

$date->setTimestamp($dateStamp);

echo $date->format('U = Y-m-d H:i:s') . "\n";
?>

答案 3 :(得分:1)

你可以试试这个

<?php
$date = date_create();
$dateStamp = $_SERVER['REQUEST_TIME'];
date_timestamp_set($date, $dateStamp);
echo date_format($date, 'U = D-M-Y H:i:s') . "\n";
?>

答案 4 :(得分:0)

REQUEST_TIME - 它是unix timestamp - 请求开始的时间戳。

$dateStamp = $_SERVER['REQUEST_TIME'];
echo date('d m Y', $dateStamp);

OR

$date = new DateTime($dateStamp);
echo $date->format('Y-m-d');

答案 5 :(得分:0)

此代码适用于您

$dateStamp = $_SERVER['REQUEST_TIME'];

echo date('d-M-Y H:i:s',strtotime($dateStamp));