【问题标题】:date() is not returning the expected value [duplicate]date() 未返回预期值 [重复]
【发布时间】:2019-09-18 13:33:21
【问题描述】:

在 JavaScript 中,我使用 (new Date("1985-05-01")).getTime(); 来获取时间戳。返回值为483753600000

在 PHP 中,我想返回那个时间戳的年份。

date('Y', 483753600000); 返回 17299 但预计为 1985。

我做错了什么?

【问题讨论】:

  • 在 js 中时间戳以毫秒为单位,在 php 中以秒为单位。
  • 日期('Y', 483753600);
  • 请注意,在 ECMAScript 中,new Date("1985-05-01") 中的时间戳将被视为 UTC。

标签: javascript php date


【解决方案1】:

JavaScript 的 getTime() 将以 毫秒 为单位返回时间戳。 PHP 的date() 函数需要以 为单位的时间戳。所以只需将它除以 1000

date('Y', 483753600000 / 1000);

【讨论】:

  • 或脱掉0s o.O
  • @treyBake 所以.. 除以 / 1000?如果那是一个变量,您需要将其转换为字符串,然后剪切最后 3 个字符。我不明白这比除法更好
  • 如果它是一个变量 - 当前的 OP 代码 != 变量,所以它只是对看起来没有必要的东西的额外函数调用
  • 好吧,如果“当前操作码不是变量”是你的逻辑,那么在他的代码上有这部分“1985-05-01”,他可以得到第一部分。为什么要打扰?
  • 我的观点正是^^
猜你喜欢
  • 2017-08-27
  • 2017-09-08
  • 2018-12-05
  • 1970-01-01
  • 2013-09-04
  • 2016-02-13
  • 2015-06-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多