【问题标题】:How to convert 13 digit string to date of format d-m-Y in PHP如何在 PHP 中将 13 位字符串转换为 d-m-Y 格式的日期
【发布时间】:2014-11-17 06:58:06
【问题描述】:

我在将 13 位字符串转换为日期时遇到问题,该日期应具有以下格式 m-d-Y。
这是我的 13 位日期字符串 - 1415855073164

我已经试过了。

$date123 = $rawDataPopup[$i]['datetime'];   //1415855073164
$convertFromDate=($date123 )/1000; // dividing by 1000 which gives me 10 digit string.

下一步如何获取 m-d-Y 日期格式。

【问题讨论】:

  • "13 digit date string" - 仅供参考,这被称为epoch timestamp。您拥有的值以毫秒为单位。
  • 但是纪元时间会有10位数的仪式吗?
  • 正确,@minspace-six - 通常纪元以秒(10 位)表示,但在这种情况下,您正在处理具有额外 3 位精度的毫秒。

标签: php mysql date unix-timestamp


【解决方案1】:

您只需将 unix 纪元时间戳(自 1970 年 1 月 1 日以来的秒数)传递给 PHP date( $format, $timestamp ) 函数。

$tsSeconds = $rawDataPopup[$i]['datetime'] / 1000;
date( 'Y-m-d', $tsSeconds );

【讨论】:

  • @minspacesix PHP 不期望毫秒值。您需要先将时间戳转换为秒。日期函数期望 time() 函数返回相同的值,以秒为单位。
  • 它给了我 46836-08-29,字符串 1415855073164。我如何再次过滤它?
  • 您正在使用以毫秒为单位的时间戳,您需要除以 1000 才能将秒数传递给 date() 函数。
  • 感谢 Lix 和 doublesharp。它为我工作。干杯
猜你喜欢
  • 2021-12-22
  • 2023-03-08
  • 2012-07-21
  • 1970-01-01
  • 2021-03-09
  • 1970-01-01
  • 2019-08-16
  • 1970-01-01
相关资源
最近更新 更多