【问题标题】:Laravel lumen is not saving right time zoneLaravel 流明没有保存正确的时区
【发布时间】:2018-10-24 07:53:45
【问题描述】:

每个人 我是 Laravel Lumen 框架的新手。我使用的是 Laravel Lumen 5.4.7,我的 PHP 版本是 7.0。我在使用 Laravel Lumen web api 在数据库中保存时区时遇到了问题。我在 .env 中更改了我的本地时区文件

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 没有在数据库中保存当前时区?

【问题讨论】:

  • 能否指定数据库中保存的时区?
  • 我在巴基斯坦。并且 date('Y-m-d H:i:s') 显示了我当前的当地时间。但它错误地保存在数据库中。我无法找到哪个时区保存在数据库中。现在我回显日期('Y-m-d H:i:s')。这次它显示我是 2018-10-24 13:06:04,这是绝对正确的。但是这次在数据库中保存的是 2018-10- 24 06:06:04
  • 你用mysql吗?如果是这样,您能否发布以下查询的结果:SELECT @@global.time_zone, @@session.time_zone;
  • 是的,我正在使用 mysql。请查看此屏幕截图以获取查询结果。Query Result
  • 您是否尝试过使用config(['app.timezone' => env('APP_TIMEZONE')]);

标签: timezone lumen


【解决方案1】:

尝试将'timezone' => env('APP_TIMEZONE', "UTC") 添加到您的config/app.php,然后运行php artisan cache:clear

还可以尝试将DB_TIMEZONE=+05:00 添加到您的.env 文件中(当然要根据您的UTC 偏移量进行调整)

【讨论】:

  • 在 Laravel Lumen 框架中 config/app.php 不可用 :( :(.
  • @Shaniawan,它是 :) 您只需从供应商文件夹 (vendor/laravel/lumen-framework/config) 中获取默认配置并将其放入您的 config/app.php,然后您就可以进行更改。跨度>
  • 感谢 Sven 的支持。但是这种方式也行不通。我复制了 vendor/laravel/lumen-framework/config/app.php 文件并在根目录中创建了一个名为 config 的新目录和将该文件粘贴到新文件夹中。在此文件中添加'timezone' => env('APP_TIMEZONE', "Asia/karachi") 并使用逗号php artisan cache:clear 然后保存数据但没有运气先生:( :(
  • 这个东西在 Laravel 5.4 框架中运行良好,但在 Laravel Lumen 框架中却不行。 :(
  • 非常感谢。这就是诀窍。非常感谢您的支持 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多