timezone - Laravel 流明没有保存正确的时区
问题描述
我是 Laravel Lumen 框架的新手。我使用的是 Laravel Lumen 5.4.7,我的 PHP 版本是 7.0。我在使用 Laravel Lumen web api 在数据库中保存时区时遇到了这个问题。我已经将我的本地时区更改为 .环境文件
APP_TIMEZONE=Asia/karachi
当我只是回显这段代码
date('Y-m-d H:i:s')
或这个
\Carbon\Carbon::now()
两行代码都返回我当前的本地时间,但是当我将这个时区保存在数据库中的“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);
我也试过这行代码来保存数据
DB::table('orders')->insert($order_data);
但是在 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);
我已经尝试了太多来消除这个问题。但还没有运气。谁能帮我为什么 Lumen 没有在数据库中保存当前时区?
解决方案
尝试添加'timezone' => env('APP_TIMEZONE', "UTC")
到您的config/app.php
并在此之后运行php artisan cache:clear
。
也尝试添加DB_TIMEZONE=+05:00
到您的.env
文件(当然调整到您的 UTC 偏移量)
推荐阅读
- javascript - 如何在vuejs 2中路由到组件中的特定div
- c# - Asp.net MVC 如何从视图调用控制器方法以获取返回变量
- python - PyQt5:如何在 QMessageBox 中显示列表?类型错误:参数 3 具有意外类型“列表”
- reactjs - react-routers 需要两到六次重定向到其他页面
- javascript - React - 无法使用 JavaScript 更改 DOM 的样式
- selenium - 如何在黄瓜硒框架中生成报告日志
- android - 有什么方法可以在不连接的情况下监控发现的 BLE 外围设备?
- c# - 通过 C# 使用 Stanford CoreNLP 时是否可以编写自定义注释器?
- botframework - 如何更改机器人标题的名称
- c++ - 通过工厂方法实例化对象没有给出期望的结果