原始问题:
2025-12-01 05:20:48Asia/Shanghai现象:
Asia/Shanghaiconfig/app.php第68行已设置为'timezone' => 'Asia/Shanghai'date_default_timezone_set()系统层面:
- PHP默认时区:UTC
- 需要:Asia/Shanghai
Laravel层面:
- config/app.php:timezone => 'Asia/Shanghai' ✅ 已设置
- public/index.php:未设置PHP时区 ❌ 需修复
文件:public/index.php
修复前:
<?php
use Illuminate\Foundation\Application;
use Illuminate\Http\Request;
define('LARAVEL_START', microtime(true));
修复后:
<?php
// 设置PHP默认时区为上海时间
date_default_timezone_set('Asia/Shanghai');
use Illuminate\Foundation\Application;
use Illuminate\Http\Request;
define('LARAVEL_START', microtime(true));
now()和date()函数date_default_timezone_get() => UTC
current_time => 2025-12-01 05:27:26 UTC
date_default_timezone_get() => Asia/Shanghai
current_time => 2025-12-01 13:27:47 CST (Asia/Shanghai)
chinese_format => 2025年12月01日 13:27:47
offset => +08:00
[2025-12-01 13:27:59] development.INFO: 时区验证测试
{
"time": "2025-12-01 13:27:59",
"format": "2025年12月01日 13:27:59",
"timezone": "Asia/Shanghai",
"php_timezone": "Asia/Shanghai"
}
1. 用户请求 → Web服务器 (Herd)
2. 执行 public/index.php
3. 调用 date_default_timezone_set('Asia/Shanghai')
4. Laravel应用启动 → config('app.timezone') = Asia/Shanghai
5. 所有 now()、date() 函数使用Asia/Shanghai
6. 响应用户请求
public/index.php设置PHP默认时区config/app.php设置Laravel应用时区date_default_timezone_set('Asia/Shanghai');
echo date('Y-m-d H:i:s T (e)'); // 2025-12-01 13:27:32 CST (Asia/Shanghai)
echo date('Y年m月d日 H:i:s'); // 2025年12月01日 13:27:32
php artisan tinker
date_default_timezone_set('Asia/Shanghai');
// 时区设置: Asia/Shanghai
// 当前时间: 2025-12-01 13:27:47 CST (Asia/Shanghai)
// 中文格式: 2025年12月01日 13:27:47
// 时差: +08:00
Log::info('时区验证测试', [
'time' => now(),
'format' => now()->format('Y年m月d日 H:i:s'),
'timezone' => config('app.timezone')
]);
// 结果:[2025-12-01 13:27:59] ✅ 正确显示上海时间
public/index.php一个文件config/app.php 第68行 'timezone' => 'Asia/Shanghai'public/index.php 添加 date_default_timezone_set('Asia/Shanghai')/tmp/timezone.ini date.timezone = Asia/Shanghai时区问题已彻底解决!
通过在Laravel应用入口文件设置PHP默认时区,确保了:
now()函数返回正确时间2025年12月01日 13:27:47修复后的系统:
2025-12-01 13:27:59(上海时间)CST (Asia/Shanghai)+08:00修复时间:2025-12-01 13:28:00
修复文件:public/index.php
影响范围:FilamentAdmin后台所有时间显示
修复状态:✅ 完成并验证