gpt4 book ai didi

6 月的 PHP strtotime 返回 7 月

转载 作者:可可西里 更新时间:2023-11-01 12:35:43 25 4
gpt4 key购买 nike

我很困惑为什么以下 PHP strtotime 函数在 $monthToGet = 'June' 时返回 '07' 作为月份编号,而不是 '06':

$monthToGet = $_GET['mon'];
$monthAsNumber = date('m', strtotime($monthToGet));

从搜索来看,这似乎是由于默认日期参数(在本例中为日期和年份)引起的,因为我没有指定它们。会是这个原因吗?

任何建议表示赞赏!

最佳答案

长话短说

你是对的

echo date("m", strtotime("June"));
-> 07

但是,确实有效:

echo date("m", strtotime("1. June 2012"));
-> 06

问题说明

今天是 31。 2012 年 7 月,由于您只提供了一个月,因此使用当前日期和当前年份来创建有效日期。

参见 documentation :

NOTE

The function expects to be given a string containing an English date format and will try to parse that format into a Unix timestamp (the number of seconds since January 1 1970 00:00:00 UTC), relative to the timestamp given in now, or the current time if now is not supplied.

备选方案

你可以使用 date_parse_from_format()strptime()用稍微不同的方法实现你想要的。

(感谢 johannes_ 和 johann__ 的输入)

关于6 月的 PHP strtotime 返回 7 月,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11740936/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com