【问题标题】:PHP date() function returning incorrect valuesPHP date() 函数返回不正确的值
【发布时间】:2013-08-27 16:20:19
【问题描述】:

我有一个时间戳“1377592503467”存储在一个变量中,当我将它传递给 php 的 date() 函数时,它返回一个值“1935-05-26 03:04:11”。希望我遗漏了一些明显的东西;下面是我的代码。时间戳表示 2013-08-27 15:57:45 但这不是返回的内容。

$date = "1377592503467";
$formattedDate = date("Y-m-d h:i:s", $date);

谢谢。

【问题讨论】:

    标签: php date unix-timestamp


    【解决方案1】:

    看起来该时间戳以 毫秒 为单位,而不是 PHP 使用的秒数。

    date(..., $date / 1000)

    【讨论】:

    • 我不确定它是否精确到毫秒,因为 (GMT+04): 2013-08-27 08:35:031377592503 的对应日期
    • @Alma 没错,但至少它能让你进入正确的球场。我不知道一种普遍适用的时间戳格式,它还有几个小时的偏差,所以我只会在提供不正确信息的 OP 方面犯错。 :)
    • 我想在评论中询问为什么 OP 提供的时间戳大于 2^31-1(即签名 longint 的最大值) - 但由于答案评分很高,看来你是对的。
    • 我不知道 OP 是如何得到那个时间戳的,但是微秒的解释更有意义。见this
    • 感谢 deceze!感谢大家的帮助。我使用 /1000 作为解决方案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-22
    相关资源
    最近更新 更多