前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在CI4(CodeIgniter 4)中设置时区

在CI4(CodeIgniter 4)中设置时区

原创
作者头像
逝水经年
发布2022-01-12 11:27:46
1.6K0
发布2022-01-12 11:27:46
举报
文章被收录于专栏:数据可视化

一、源起

在PHP程序设计中,我们时常需要获取到当前时间,但是在CodeIgniter4(以下简称CI4)中默认时间是 America/Chicago

那么这样就很蛋疼了,使用以下代码

代码语言:php
复制
echo date('Y-m-d H:i:s');

输出的是(Chicago是西6区)

代码语言:html
复制
2022-01-11 21:06:25

但实际东八区是

代码语言:txt
复制
2022-01-12 11:06:25

二、解决过程

在网上冲浪,找到两种方法,我觉着都比较麻烦,但是可以总结一手

方法一

php.ini中找到data.timezone=去掉它前面的;号,然后设置data.timezone= “Asia/Shanghai”。

方法二

在用date()函数前之前加一行

代码语言:php
复制
date_default_timezone_set("Asia/Shanghai");

三、个人觉得在CI4中更好的办法

上面提及的两种办法,我都觉得有点麻烦,

方法一如果在配新环境的时候忘记了,那输出或者存进数据库的数据就完蛋了。

方法二的话在用之前加那一行,在代码编写的时候就比较麻烦。

但在CI4中,可以在.env文件中加一行,就能解决

代码语言:txt
复制
app.appTimezone = "Asia/Shanghai"

四、写在最后

CI4这个框架和PHP我了解的都不算太多,但是一番搜索下来关于CI4的文章还是比较少,甚至于对于这个时区的问题基本没有介绍,那么就打算写下这篇文章来给未来的同学在遇到这个问题的时候可以少走些弯路,我们共同进步。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、源起
  • 二、解决过程
    • 方法一
      • 方法二
      • 三、个人觉得在CI4中更好的办法
      • 四、写在最后
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档