我们正在使用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参数
我不知道这意味着什么以及我能做些什么。有人在想吗?因为冬天的小时会引起可怕的头痛......
答案 0 :(得分:2)
使用gmmktime。
答案 1 :(得分:2)
date("I", time());
如果夏令时会给你1,如果没有则会给你0。
答案 2 :(得分:2)
从php手册页:
“如果时区无效,则每次调用日期/时间函数都会生成E_NOTICE,和/或如果使用系统设置或TZ环境变量,则会生成E_STRICT消息。另请参阅date_default_timezone_set()”< / p>
这可能意味着您之前应该使用date_default_timezone_set()并跳过is_dst参数