【问题标题】:What is the PHP equivalent of Javascript's Date.UTC command?Javascript 的 Date.UTC 命令的 PHP 等效项是什么?
【发布时间】:2011-04-29 11:43:18
【问题描述】:

我如何在 PHP 中说这个 Javascript:

var ts=Date.UTC(1985,1,22);

【问题讨论】:

    标签: php javascript timestamp


    【解决方案1】:

    PHP 的在线文档非常有用:http://www.php.net/manual/en/ref.datetime.php

    mktime 接受参数hour,minute,second,month,day,year。

    $ts = mktime(0, 0, 0, 1, 22, 1985);
    

    Date.UTC 返回毫秒,而 mktime 返回秒,所以如果您仍然需要毫秒,请乘以 1000。

    【讨论】:

      【解决方案2】:
      $date = new DateTime(NULL, new DateTimeZone('UTC'));
      $date->setDate(1985, 1, 22);
      $ts = $date->getTimestamp();
      

      编辑:更正时区参数。

      【讨论】:

      • 使用这个方法你可以调用$ts->getTimestamp()来获取时间戳(同样是从纪元开始的秒数)
      • @bemace,是的,我在看到你的评论之前就发现了。
      • 另外,mktime 使用 GMT,而这种方法确实提供了实际的 UTC 支持,在极少数情况下差异对您来说确实很重要。
      • 致命错误:未捕获的异常 'Exception' 带有消息 'DateTime::__construct() 需要参数 2 为 DateTimeZone,给定整数
      【解决方案3】:
      $ts = gmmktime(0, 0, 0, 2, 22, 1985) * 1000
      

      【讨论】:

        猜你喜欢
        • 2011-10-16
        • 2019-03-19
        • 1970-01-01
        • 2018-12-01
        • 1970-01-01
        • 2013-08-30
        • 2013-02-02
        • 1970-01-01
        • 2023-03-14
        相关资源
        最近更新 更多