使用PHP,我希望将UNIX时间戳转换为类似于以下内容的日期字符串:2008-07-17 t9:24:17 z
如何将时间戳(如1333699439)转换为2008-07-17 t9:24:17 z ?
使用PHP,我希望将UNIX时间戳转换为类似于以下内容的日期字符串:2008-07-17 t9:24:17 z
如何将时间戳(如1333699439)转换为2008-07-17 t9:24:17 z ?
当前回答
DateTime类在构造函数中接受一个字符串。如果你用@-字符作为时间戳的前缀,你创建了一个带有时间戳的DateTime对象。格式化使用'c'格式…预定义的ISO 8601复合格式。
如果可以像这样使用DateTime类…设置正确的时区,如果需要UTC时间,则不设置。
$dt = new DateTime('@1333699439');
$dt->setTimezone(new DateTimeZone('America/New_York'));
echo $dt->format('c');
https://www.php.net/manual/en/book.datetime.php https://www.php.net/manual/en/datetime.format.php 更多示例和时区https://time.einfach.jetzt/?t=1333699439
其他回答
你可以像.....
$originalDate = "1585876500";
echo $newDate = date("Y-m-d h:i:sa", date($originalDate));
假设你正在使用PHP5.3,那么现代的处理日期的方式是通过本机DateTime类。要获得当前时间,只需调用
$currentTime = new DateTime();
从一个特定的时间戳(即不是现在)创建一个DateTime对象
$currentTime = DateTime::createFromFormat( 'U', $timestamp );
要获得格式化的字符串,您可以调用
$formattedString = $currentTime->format( 'c' );
在这里查看手册页
$unixtime_to_date = date('jS F Y h:i:s A (T)', $unixtime);
这应该会起作用。
<?php
$timestamp=1486830234542;
echo date('Y-m-d H:i:s', $timestamp/1000);
?>
DateTime类在构造函数中接受一个字符串。如果你用@-字符作为时间戳的前缀,你创建了一个带有时间戳的DateTime对象。格式化使用'c'格式…预定义的ISO 8601复合格式。
如果可以像这样使用DateTime类…设置正确的时区,如果需要UTC时间,则不设置。
$dt = new DateTime('@1333699439');
$dt->setTimezone(new DateTimeZone('America/New_York'));
echo $dt->format('c');
https://www.php.net/manual/en/book.datetime.php https://www.php.net/manual/en/datetime.format.php 更多示例和时区https://time.einfach.jetzt/?t=1333699439