我正在尝试测试当前时间是否已超过当天中午,但对 strtotime 的调用不会返回我期望的值。代码$time=strtotime("12:00 PM TODAY");
echo date('h:i:s A',$time);输出12:00:00 AM
1 回答

慕村225694
TA贡献1880条经验 获得超4个赞
你有它的错误顺序。您需要日期,然后是时间:
$time=strtotime("TODAY 12:00 PM"); echo date('Y-m-d H:i:s', $time); // 2020-02-25 12:00:00
请参阅https://www.php.net/manual/en/datetime.formats.relative.php:
相对语句总是在非相对语句之后处理。这使得“2008 年 7 月 +1 周”和“2008 年 7 月 +1 周”等效。
此规则的例外情况是:“昨天”、“午夜”、“今天”、“中午”和“明天”。请注意,“明天 11:00”和“明天 11:00”是不同的。考虑到今天“2008 年 7 月 23 日”的日期,第一个产生“2008-07-24 11:00”,而第二个产生“2008-07-24 00:00”。原因是这五个语句直接影响当前时间。
- 1 回答
- 0 关注
- 122 浏览
添加回答
举报
0/150
提交
取消