请用thinkphp做一个网站,因为是给外国人看的,所以生成单号的时候时间用莫斯科的,但是是给中国人用的,所以数据库里的时间是中国的,我分别在获取时间的时候调用了两次这个函数。我是想问这个函数是对当前网页起作用还是对php系统起作用?当多人一起访问的时候会不会相互影响?另外在thinkphp中不同的网页是用同一个控制器文件的(存储数据库和生成网页在一个xxxaction.class.php),有影响吗?(小弟初学,已经晕了,请大侠帮助)
回复讨论(解决方案)
php的生命周期就是一个请求,所以里面的函数也只对当前这个php进程有作用,而在一个php进程里面,这个函数的效果是全局的,就是说每调用一次date_default_timezone_set,之后用php时间函数获取到的时间都会变成相应时区的时间。多人同时访问是多个不同的php进程,相互之间是没有影响的
如果初学,建议先不碰那个时区
系统内的时间全部按中国算,到了打单号时,使用一个函数统一给时间加上时区差,这样不乱了吧
如果设置时区在入口的配置文件,那就是对全局的,如果在局部某个方法,只是会针对当前方法生效。
比如你在config.php设置,针对全局。
如你在控制器下的action的方法做新增操作,针对当前有效。