【问题标题】:Getting timezone for JavaScript and PHP all mixed up让 JavaScript 和 PHP 的时区混在一起
【发布时间】:2011-03-29 21:52:16
【问题描述】:

我正在尝试在 PHP 脚本和一些 JavaScript 代码之间同步时区。

我想要一个返回 UTC 时间戳的 PHP 函数。 gmmktime() 会这样做吗?

在 JavaScript 方面,我有:

var real_date = new Date();
real_date    -= real_date.getTimezoneOffset() * 60000;
real_date    /= 1000;

这会将时间戳转换为 UTC 吗?

【问题讨论】:

    标签: php javascript timezone timestamp utc


    【解决方案1】:

    PHP

    只要time() 会做你想做的事。如果您想要一个任意时间戳,而不是当前时间,那么 gmmktime 会这样做,是的。

    返回测量的当前时间 自 Unix 以来的秒数 纪元(1970 年 1 月 1 日 00:00:00 GMT)。

    http://www.php.net/manual/en/function.time.php

    Javascript

    您可以使用 Date 对象的 .UTC() 方法来获取 UTC 的毫秒数。但是,如果您从时间戳开始,您当前的解决方案也应该有效。

    【讨论】:

    • 谢谢。所以只是为了确认... PHP 中的 time() 与时区无关?
    • 是的。 time() 总是返回 UTC 时间戳。
    【解决方案2】:

    您可以使用time()

    关于 Javascript 问题UTC

    【讨论】:

    • 实际上 gmdate 返回的是格林威治标准时间,我错了,我会编辑它。
    • FWIW,除非您担心精确到小数秒(如果您担心的话,您可能没有使用 PHP),GMT 和 UTC 应该是等效的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多