【问题标题】:Display date 31-12-1969 [closed]显示日期 31-12-1969 [关闭]
【发布时间】:2012-08-15 14:08:05
【问题描述】:

我使用了数据库中的日期。我的php页面展示:

31-12-1969

如何避免这种情况并将日期显示为空白或 0:0:0

【问题讨论】:

  • print $date == "31-12-1969" ? "0:0:0" : $date;
  • 欢迎来到 Stack Overflow!请阅读有关发布问题的常见问题解答。谢谢! stackoverflow.com/faq
  • 至少要弄清楚31-12-1969 的来源。要么在您的数据库中允许该字段的 NULL 值,因此它们实际上是空的,和/或在您的 PHP 代码中执行 if (!$date) 以在日期为空时根本不打印日期。

标签: php database date


【解决方案1】:

如您所知,UNIX 时间戳描述的是从 1970 年 1 月 1 日午夜开始的秒数。因此,您的 0:0:0 没有任何意义,而 31-12-1969 实际上意味着 zero, THE zero 数据具有有效格式,但自 UNIX 纪元以来在时间轴中没有任何位置。因此,如果您正确评估它,它将是空白的。

(感谢 Leigh 的观察)

【讨论】:

  • 肯定要在 1970 年之前,你实际上需要一个负时间戳,因为 01/01/1970 00:00:00 是 0
  • @Leigh 不,你只需要在UTC以西的时区。
  • 也许超人让世界倒退了。再次
  • 我想开个玩笑,然后我...php -r 'var_dump(date("Y-m-d H:i:s", -1));' - 哇,1969 :D
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-11
相关资源
最近更新 更多