温馨提示×

Debian PHP如何设置时区

小樊
45
2026-08-16 05:36:42
栏目: 编程语言

Debian 上设置 PHP 时区,常见有几种方式,推荐按使用场景选择。


一、通过 php.ini 设置(最常用 ✅)

1. 找到 php.ini 文件

php -i | grep "Loaded Configuration File"

常见路径:

  • /etc/php/8.2/cli/php.ini(CLI)
  • /etc/php/8.2/apache2/php.ini(Apache)
  • /etc/php/8.2/fpm/php.ini(Nginx + PHP-FPM)

注意:CLI 和 FPM/Apache 是不同的 php.ini


2. 修改时区

编辑对应 php.ini

sudo nano /etc/php/8.2/fpm/php.ini

找到或添加:

date.timezone = "Asia/Shanghai"

常用时区示例:

Asia/Shanghai
Asia/Taipei
Asia/Hong_Kong
UTC

3. 重启 PHP 服务

PHP-FPM

sudo systemctl restart php8.2-fpm

Apache

sudo systemctl restart apache2

Nginx(通常配合 PHP-FPM)

sudo systemctl restart php8.2-fpm

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

date_default_timezone_set('Asia/Shanghai');

或查看当前时区:

echo date_default_timezone_get();

⚠️ 不推荐作为长期方案,仅用于调试或特殊场景。


三、通过环境变量(不常用)

export TZ=Asia/Shanghai

⚠️ 对 PHP 影响有限,不推荐。


四、验证是否生效

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

或在网页中:

<?php
phpinfo();

查看 date.timezone


五、推荐做法 ✅

场景 建议
服务器全局 修改 php.ini
Docker / 容器 php.ini + 环境变量
单个项目 date_default_timezone_set()

如果你愿意,可以告诉我:

  • Debian 版本
  • PHP 版本
  • 使用 Apache / Nginx / CLI

我可以给你精确到命令级别的配置方案。

0