在我的代码中,我将MySQL时区设置为US / Pacific,结果为:
Array ( [0] => SYSTEM [@@global.time_zone] => SYSTEM [1] => US/Pacific [@@session.time_zone] => US/Pacific )
但是,当我多次运行查询时,它有时会发生变化,例如
Array ( [0] => SYSTEM [@@global.time_zone] => SYSTEM [1] => US/Arizona [@@session.time_zone] => US/Arizona )
然后有时即使我设置了它,我在查询时也会看到这个
Array ( [0] => SYSTEM [@@global.time_zone] => SYSTEM [1] => SYSTEM [@@session.time_zone] => SYSTEM )
为什么会话会失去time_zone设置?大多数情况下,它返回正确的值/时区,但是在第4或第5次查询时,它是错误的时区。这是一个很大的问题,因为datetime字段在返回时会考虑到这一点,从而搞砸了我对日期时间的进一步使用。
答案 0 :(得分:0)
default_date_timezone_set
函数集仅更改脚本执行的时区。您可以将时区存储在会话变量中,并将时区设置在每个页面的顶部。