ルーメンのタイムゾーン タイムゾーンの設定方法

php中世界最好的语言
リリース: 2023-03-26 22:10:02
オリジナル
1663 人が閲覧しました

今回はLumenタイムゾーンでタイムゾーンを設定する方法を紹介します。Lumenタイムゾーンでタイムゾーンを設定する際の注意点を実際のケースで見てみましょう。

Laravel 4.x および 5.0 の経験によれば、config/app.php で「timezone」パラメータを「PRC」に設定するだけで済みます。/vendor/laravel/lumen-framework / で Lumen config ディレクトリを見つけます。 configパスを追加しましたが、config/app.phpのパラメータオプションにtimezoneパラメータのオプションがなく、手動で追加しても無効となります。

その後、Laravel 5 の .env ファイルについて考えたところ、Lumen の .env ファイルにはタイムゾーン設定のオプションがないことがわかりました。

config ディレクトリに戻り、config/database.php の設定を確認します。mysql のデフォルト設定は次のとおりです。

'mysql' => [
 'driver'  => 'mysql',
 'host'   => env('DB_HOST', 'localhost'),
 'port'   => env('DB_PORT', 3306),
 'database' => env('DB_DATABASE', 'forge'),
 'username' => env('DB_USERNAME', 'forge'),
 'password' => env('DB_PASSWORD', ''),
 'charset'  => 'utf8',
 'collation' => 'utf8_unicode_ci',
 'prefix'  => env('DB_PREFIX', ''),
 'timezone' => env('DB_TIMEZONE','+00:00'),
 'strict'  => false,
],
ログイン後にコピー

ここにはデータベースのタイムゾーン設定があります。デフォルトは +00:00 です。これは UTC 時間です。Change Cheng+08:00 問題は解決しました。プロジェクトで .env 設定ファイルが有効になったので、最終的に .env ファイルに行が追加されました

DB_TIMEZONE=+08:00

DB_TIMEZONE=+08:00

数据库 timezone 问题解决。

数据库的 timezone 问题虽然解决了, 但是 app 的 timezone 问题还没解决, 全局搜索 lumen 项目, 找用到 timezone 的地方, 在 /vendor/laravel/lumen-framework/src/Application.php 文件中找到了初始化 lumen timezone 部分的代码

/**
* Create a new Lumen application instance.
*
* @param string|null $basePath
* @return void
*/
public function construct($basePath = null)
{
 date_default_timezone_set(env('APP_TIMEZONE', 'UTC'));
 $this->basePath = $basePath;
 $this->bootstrapContainer();
 $this->registerErrorHandling();
}
ログイン後にコピー

代码中使用的 .env 参数为 APP_TIMEZONE, 值为 UTC, 在这里将 UTC 改为 PRC, 或者在 .env 文件里添加

APP_TIMEZONE=PRC データベースのタイムゾーンの問題は解決されました。

データベースのタイムゾーンの問題は解決しましたが、アプリのタイムゾーンの問題は解決されていません。lumen プロジェクトをグローバルに検索し、/vendor/laravel/lumen-framework でタイムゾーンが使用されている場所を見つけます。 /src/Application.php ファイルに見つかりました

APP_TIMEZONE=PRC
DB_TIMEZONE=+08:00
ログイン後にコピー

コードで使用されている .env パラメーターは APP_TIMEZONE で、値はここで UTC を PRC に変更します。または、 .env ファイルに を追加 APP_TIMEZONE=PRC

lumen php のタイムゾーン設定の問題が解決されました。

Lumen タイムゾーン設定の概要

.env ファイルを編集して構成を追加します

/vendor/laravel/lumen-framework/config/database.php
/vendor/laravel/lumen-framework/src/Application.php
ログイン後にコピー
.env 構成ファイルが有効になっていない場合は、

Dotenv::load(DIR.'/../');
ログイン後にコピー

を編集して APP_TIMEZONE および DB_TIMEZONE パラメータ値をそれぞれ変更します。
.env設定ファイルを有効にする

Lumenルートディレクトリにある.env.exampleファイルの名前を.envに変更し、/bootstrap/app.phpを編集し、次のコード行のコメントを解除します


APP_TIMEZONE=PRC 
DB_TIMEZONE=+08:00
ログイン後にコピー
追加:

ルーメンはデフォルトでグリニッジ時間を使用するため、北京時間に変換する必要があります。

rrreee を .env に追加します。この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。

推奨書籍:

PHP でバイナリの 1 の統計的な数を実装するアルゴリズム手順の詳細な説明

🎜🎜🎜 PHP で WeChat リモート コントロール サーバーを開発する手順の詳細な説明 🎜🎜🎜

以上がルーメンのタイムゾーン タイムゾーンの設定方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート