温馨提示×

linux php时区怎么配置

小樊
40
2026-10-09 23:41:44
栏目: 编程语言

在 Linux 下配置 PHP 时区,常见有 php.ini 配置、代码动态设置、Linux 系统时区同步 三种方式,下面按使用频率说明。


一、通过 php.ini 配置(推荐、全局生效)

1. 找到 php.ini

php --ini
# 或
php -i | grep "Loaded Configuration File"

2. 修改时区

编辑 php.ini:

vi /etc/php.ini

找到:

; date.timezone =

改为(示例):

date.timezone = "Asia/Shanghai"

常见时区:

  • Asia/Shanghai(中国)
  • Asia/Tokyo
  • Europe/London
  • UTC

3. 重启服务

# PHP-FPM
systemctl restart php-fpm

# Apache
systemctl restart httpd

# Nginx + PHP-FPM 通常只需重启 php-fpm

二、在 PHP 代码中设置(临时/局部)

date_default_timezone_set('Asia/Shanghai');
echo date('Y-m-d H:i:s');

或:

ini_set('date.timezone', 'Asia/Shanghai');

⚠️ 仅对当前脚本有效。


三、设置 Linux 系统时区(推荐同步)

PHP 默认可能读取系统时区:

timedatectl set-timezone Asia/Shanghai

查看:

timedatectl

四、Docker 中的 PHP 时区

方式 1:php.ini

RUN echo "date.timezone=Asia/Shanghai" > /usr/local/etc/php/conf.d/timezone.ini

方式 2:环境变量

ENV TZ=Asia/Shanghai

五、验证是否生效

<?php
echo date_default_timezone_get();
echo date('Y-m-d H:i:s');

或命令行:

php -r "echo date('Y-m-d H:i:s');"

如果你用的是 CentOS / Ubuntu / Docker / LNMP,可以告诉我具体环境,我可以给你精确命令。

0 踩