在Ubuntu系统中设置PHP时区
为PHP配置正确的时区,是确保应用时间戳准确无误的基础操作。在Ubuntu环境下,这个过程其实相当清晰,只需几个步骤就能搞定。下面就来详细拆解一下。

第一步:打开终端
一切操作都从终端开始。按下 Ctrl + Alt + T 快捷键,就能快速召唤它。
第二步:查看并选择时区
首先,得知道系统支持哪些时区。运行下面这个命令,会列出一个长长的清单:
timedatectl list-timezones
你可以滚动浏览,找到你所在或你需要的时区,比如 Asia/Shanghai 或 America/New_York。
第三步:设置系统时区
选定时区后,就用它来配置系统。记得把命令里的 Your/Timezone 替换成你实际的选择:
sudo timedatectl set-timezone Your/Timezone
举个例子,如果要设置为纽约时间,命令就是:
sudo timedatectl set-timezone America/New_York
第四步:确认系统时区更改
设置完,最好立刻验证一下。运行:
timedatectl
输出的信息里,应该能清晰地看到你刚刚设置的时区,这就说明系统层面的配置成功了。
第五步:定位PHP配置文件
系统时区设好了,但PHP有自己独立的配置。接下来需要找到 php.ini 文件。它的路径通常和PHP版本及运行方式有关:
- 命令行版本:路径类似
/etc/php/{version}/cli/php.ini - PHP-FPM版本:路径类似
/etc/php/{version}/fpm/php.ini
这里的 {version} 需要替换成你实际安装的PHP版本号。比如,对于PHP 7.4,路径可能就是 /etc/php/7.4/cli/php.ini。
第六步:编辑php.ini文件
使用你熟悉的文本编辑器打开文件。这里以nano为例:
sudo nano /etc/php/{version}/cli/php.ini
同样,别忘了把 {version} 替换成你的PHP版本。
第七步:修改时区配置
在打开的 php.ini 文件中,搜索下面这行:
;date.timezone =
关键操作来了:首先删除行首的分号来取消注释,然后等号后面填上你选定的时区。就像这样:
date.timezone = Your/Timezone
请确保此处的 Your/Timezone 与第二步中选择的时区标识完全一致。
第八步:保存并重启服务
保存对 php.ini 文件的修改并关闭编辑器。但修改还没生效,必须重启相关的服务。
如果你使用的是Apache服务器,运行:
sudo systemctl restart apache2
如果你使用的是PHP-FPM,则需要重启对应的FPM服务:
sudo systemctl restart php{version}-fpm
记住,这里的 {version} 依然需要替换。
完成验证
至此,所有配置步骤就完成了。想要验证PHP时区是否真的生效,最直接的方法是创建一个包含 phpinfo(); 函数的PHP文件,在浏览器中访问它,在输出的信息中找到“date.timezone”一项,核对是否已变为你设置的值。
跟着以上步骤走一遍,你的Ubuntu系统上的PHP时区就能准确无误地设置好了。
