php输出1到1999,php – strtotime返回当前年份,当输入格式为YYYY且值大于1999时

我不确定这是一个错误,因为搜索后我找不到任何重复的经历 – 但是,这个让我难过.

虽然在一个(相当痛苦的)脚本中打算采取一堆自由文本记录并将它们转换为有用的日期记录,但我信任的朋友strtotime()似乎让我失望了.

出于测试目的,我将代码简化为:

=date('Y', strtotime("1999"));?>

输出显示:1999年

=date('Y', strtotime("1981"));?>

输出显示:1981年

=date('Y', strtotime("2001"));?>

输出显示:2012年

=date('Y', strtotime("2021"));?>

输出显示:2012年

在输入超过“1999”之前,一切似乎都很好 – 从那一点开始,每一年之前和之后每年都会返回当前年份(2012年)

任何输入都非常感谢.

解决方法:

The “Year (and just the year)” format only works if a time string has already been found — otherwise this format is recognised as HH MM.

(页面上的最后一个注释).

标签:strtotime,php

来源: https://codeday.me/bug/20190826/1730703.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值