Laravelの初期設定

この記事は個人開発記録の2記事目です。

前回は『DockerによるLaravel Webアプリケーション開発環境構築』というタイトルでDockerによるLaravelの開発環境構築手順をご紹介しました。

今回は、前回構築したLaravelの初期設定を施した記録です。
言語設定やタイムゾーン、アプリケーション名などの設定を行いました。

app.phpの変更

app.php では大きく分けて3か所の変更を行いました。

  • localefallback_locale 設定を日本語に変更する
  • timezoneAsia/Tokyo に変更する
  • nameenv('APP_NAME', アプリケーション名) に変更する

locale・fallback_locale設定を日本語に変更

まずは下のように書き換えることで、Laravelの言語パックを英語から日本語に変更しました。

'locale' => 'en',

から

'locale' => 'ja',

に変更します。
ダミーデータも日本語に変更しました。

'faker_locale' => 'en_US',

から

'faker_locale' => 'ja_JP',

に変更です。

言語設定の変更に伴い、プロジェクト内に日本語に対応したメッセージファイルを用意。
こちらのメッセージファイルは、minoryorg/laravel-resources-lang-jaからコピーさせていただきました。

【参考】

timezoneをAsia/Tokyoに変更

タイムゾーンはデフォルトで協定世界時に設定されているので、日本標準時に変更します。

これを変更しなければ、クーロン設定などで定時処理を行う際に時差を考慮して記述する必要が出てきます。
ちなみに、時差は+9時間です。

'timezone' => 'UTC',

から

'timezone' => 'Asia/Tokyo',

に書き換えです。

【参考】

– nameをenv(‘APP_NAME’, アプリケーション名)に変更

name 変数にアプリ名を挿入します。

ここで env() 関数を利用しますが、この関数は第一引数に指定した環境変数を代入し、取得を試みた環境変数が取得できなかった場合、第二引数のデフォルト値を代入するというものです。

デフォルトでは

'name' => env('APP_NAME', 'Laravel'),

となっていますが、これを

'name' => env('APP_NAME', <アプリ名>),

に変更します。

実際は次の手順で環境変数にアプリ名を入れるので、第二引数が取られることは無いのですが、念の為に変更しておいたほうが安心ですね。

【参考】

.envの変更

.env ではアプリ名情報とデータベース情報の変更を行いました。

アプリ名情報の変更

アプリ名情報の変更は .envAPP_NAME に自身のアプリ名を入れてあげましょう。

APP_NAME=<アプリ名>

これで先程の env() 関数を利用すると、第一引数からこちらの値を参照してくれるようになります。

【参考】

データベース情報の変更

続いてデータベース情報は docker-compose.yml と内容を合わせながら設定していきます。

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=databasename
DB_USERNAME=user
DB_PASSWORD=password

【参考】

【おまけ】.editorconfigの変更

おまけでエディターの設定を変更しました。

インデントを php ファイル以外は 2 にしたかったので .editorconfig を書き換えています。

[*.{yml,yaml}]
indent_size = 2

から

[*.{yml,yaml,json,scss,html,js,vue,blade.php}]
indent_size = 2

に変更しています。

【参考】

まとめ

この記事では、Laravelに施した初期設定をご紹介しました。

まだ設定の効果を実感できる部分はあまりありませんが、これから開発を進めていくことで徐々に実感できるようになってくるでしょう!

とても楽しみです!!

次回はPHPのコードの静的解析ツール『Larastan』を導入したので、その導入方法を記事にしたいと思います。

もし今回の記事に誤り、不足などありましたら、コメントにてご指摘いただけると嬉しいです。

お読みいただきありがとうございました!^ ^

参考サイト一覧

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です