小编Sha*_*wan的帖子

Laravel 流明没有保存正确的时区

我是 Laravel Lumen 框架的新手。我使用的是 Laravel Lumen 5.4.7,我的 PHP 版本是 7.0。我在使用 Laravel Lumen web api 在数据库中保存时区时遇到了这个问题。我已经在 .环境文件

APP_TIMEZONE=Asia/karachi
Run Code Online (Sandbox Code Playgroud)

当我只回显这段代码时

date('Y-m-d H:i:s')
Run Code Online (Sandbox Code Playgroud)

或这个

\Carbon\Carbon::now()
Run Code Online (Sandbox Code Playgroud)

两行代码都返回我当前的本地时间,但是当我将此时区保存在数据库中的“created_at”和“updated_at”字段时。它保存了错误的时区。为什么会发生这种情况?我正在使用这行代码来保存数据数据库

$order_data=array(
        'amount'=>35,
        'updated_at' =>\Carbon\Carbon::now(),
        'created_at' =>\Carbon\Carbon::now()
    );
DB::table('orders')->insertGetId($order_data);
Run Code Online (Sandbox Code Playgroud)

我也试过这行代码来保存数据

DB::table('orders')->insert($order_data);
Run Code Online (Sandbox Code Playgroud)

但是在created_at和updated_at字段中的数据库中仍然有错误的时区。然后我还更新了我的代码以使用Elequont,为此我创建了一个名为“Order”的模型但在数据库中仍然有错误的时区。我的Elequont代码如下.

$order_data=array(
        'amount'=>35,
        'updated_at' =>\Carbon\Carbon::now(),
        'created_at' =>\Carbon\Carbon::now()
    );   
Order::create($order_data);
Run Code Online (Sandbox Code Playgroud)

我已经尝试了太多来消除这个问题。但还没有得到任何运气。谁能帮助我为什么 Lumen 没有在数据库中保存当前时区?

timezone lumen

2
推荐指数
1
解决办法
2196
查看次数

标签 统计

lumen ×1

timezone ×1