我们正在使用 mktime 方法创建一个 unix 时间戳,该方法给出以下属性:

print_r(mktime(0,0,0,3,1,2009));
print_r(mktime(null,null,null,3,1,2009) / 60 / 60 / 24) . "days");`

这会产生以下结果

1235862000

14303.958333333 days

这应该是 14304 天。这种情况下的问题是冬天的时间。您可以使用 is_dst 参数,当我们使用 0(默认为 -1)时,有时可以正常工作,结果为 14304 天。

但有时这会带来以下问题:

严格标准:mktime() [function.mktime]:不推荐使用 is_dst 参数

我不知道这意味着什么以及我能做些什么。有人知道吗?因为冬天的时候会引起严重的头痛......

有帮助吗?

解决方案

使用 gmmktime

其他提示

date("I", time());

会给你1,如果其夏令和0如果它不是

从 php 手册页:

“如果时区无效,则每次调用日期/时间函数都会生成 E_NOTICE,和/或如果使用系统设置或 TZ 环境变量,则会生成 E_STRICT 消息。也可以看看 date_default_timezone_set()"

这可能意味着你应该使用 date_default_timezone_set() 之前并跳过 is_dst 参数

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top