【问题标题】:why date() function get wrong month?为什么 date() 函数得到错误的月份?
【发布时间】:2020-03-05 12:04:13
【问题描述】:

我正在使用 date() 函数从时间戳中获取月份和年份..

它应该返回 2019-10,当我在这里测试它时:https://3v4l.org/uH5Gt

得到正确的结果

但是当我在我的项目中使用相同的代码时 .. 它得到了 2019-09 .. 它得到了上个月!!

为什么?!

这是我的代码:

$start    = 1569888000;
echo date("Y-m", $start);

【问题讨论】:

  • 你知道时区吗?
  • 是的,但即使我的时区也是 2019-10 .. 我现在也在 localhost 上测试并得到正确的结果
  • 服务器有它自己的时区3v4l.org/FZkO3
  • 其他人的注意事项:(time_t)15698880002019-10-01T00:00:00Z

标签: php date time


【解决方案1】:

下面会每天返回。

echo date("Y-n-j", strtotime("first day of previous month"));
echo date("Y-n-j", strtotime("last day of previous month"));

如果您不确定时区设置,请尝试以下代码

// set the default timezone to use. Available since PHP 5.1
date_default_timezone_set('UTC');

$start    = 1569888000;
echo date("Y-m", $start);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-02
    • 2014-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    相关资源
    最近更新 更多