php开发的时区问题

php开发时区问题

遇到问题:取数据的时候,使用date函数对时间戳进行格式转换的时候,时间相差8个小时。
问题原因:php在使用date函数的时候,会依照所在时区去进行计算。
问题举例:你的服务器放在英国,但是php.ini中也没有配置时区的问题。这样php就会以默认系统的时区(英国时间)作为时区去进行显示。这个时候在中国查看网页,就会时间相差8个小时。
php输出时间混乱原因:
1:保存的时候没有设置时区,取数据的时候使用了date函数。
2:保存时调整了时区的时候,取数据的时候再次调整了
解决方案:
laravel框架:使用的laravel框架,配置文件中的app.php文件设置了时区。'timezone' => 'PRC',
php解决:php.ini文件配置date.timezone = PRC
在php代码开头,可以使用ini_set函数来临时修改一些php的默认配置,可以:
ini_set('date.timezone','Asia/Shanghai');
和ini_set函数一样,date_default_timezone_set函数也可以临时修改php配置。
date_default_timezone_set('Asia/Shanghai');
关于时间的方法:
可变:date()会根据时区不同数据不同
不可变:time()、gmdate()。不会根据时区不同显示数据不同
具体理解:php开发 时区问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值