Laravel11のプロジェクトの出力を日本語にさせる設定方法の解説です。
一応、公式ドキュメントにしっかり解説されていますし、
解説記事も多数ありますが、自分用のメモとして記事化しました。

Localization - Laravel 11.x - The PHP Framework For Web Artisans
Laravel is a PHP web application framework with expressive, elegant syntax. We???ve already laid the foundation ??? free...
前提条件
- PHP8.2以降インストール済
- Composerインストール済
これからやること
- Laravel11プロジェクト新規作成
- ルーティング
- ビュー編集
- ビルトインサーバ起動
- ブラウザで動作確認
- 日本語化設定
- ブラウザで動作確認
Laravel11プロジェクト新規作成
プロジェクト「app-ja」を新規作成します。
composer create-project laravel/laravel:^11 app-ja

プロジェクトフォルダに入ります。
cd app-ja

ルーティング
動作確認のためのサンプルアプリを作成します。
「routes/web.php」を編集します。
<?php
use Illuminate\Support\Facades\Route;
use Illuminate\Support\Facades\Validator;
Route::get('/', function () {
$data = [
'name' => 123,
'email' => 'hoge',
];
$validator = Validator::make(
data: $data,
rules: [
'name' => 'required|string|max:255',
'email' => 'required|email:rfc',
],
);
return view('welcome', [
'valid' => $validator->valid(),
'data' => $data,
'messages' => $validator->fails()
? $validator->errors()->messages()
: [],
]);
});
ビュー編集
「resources/views/welcome.blade.php」を編集します。
<!DOCTYPE html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
<head>
<meta charset="utf-8">
<title>Laravel</title>
</head>
<body>
<div>
<p>バリデーション結果:{{ $valid ? '合格' : '不合格' }}</p>
<p>データ:
<ul>
@foreach ($data as $key => $value)
<li>{{ $key }}: {{ $value }}</li>
@endforeach
</ul>
</p>
<p>
メッセージ:
<ul>
@foreach ($messages as $key => $message)
<li>{{ $key }}:
<ul>
@foreach ($message as $m)
<li>{{ $m }}</li>
@endforeach
</ul>
</li>
@endforeach
</ul>
</p>
</div>
</body>
</html>
ビルトインサーバ起動
WEBサービスを起動します。
php artisan serve

ブラウザで確認
WEBブラウザで次のURLへアクセスします。
http://localhost:8000/

バリデーションのエラーメッセージが英語で表示されました。
日本語化設定
言語定義フォルダを作成します。
php artisan lang:publish

Laravel用日本語化パッケージ「Breezejp」をインストールします。
GitHub - askdkc/breezejp: Laravel Starter Kit (Livewire+Breeze+Laravel UI+Jetstream)を一瞬で日本語化し、言語切替機能も提供するパッケージです / Laravelの各種バリデーションメッセージも日本語化するのでStarter Kit無しでも便利✨
Laravel Starter Kit (Livewire+Breeze+Laravel UI+Jetstream)を一瞬で日本語化し、言語切替機能も提供するパッケージです / Laravelの各種バリデーションメッセージも日本語化するので...
※名前にBreezeが付いていますが、
※Breezeをインストールしていなくても問題ありません。
※また、Jetstreamの日本語化も対応しています。
composer require askdkc/breezejp --dev

※インストーラーなので開発環境だけインストールすればOKです。
日本語翻訳ファイルをインストールします。
php artisan breezejp

「lang/ja/」フォルダに翻訳ファイルがコピーされ、
「.env」の言語設定、タイムゾーン設定が変更されました。

ブラウザで動作確認
先程のURLを再読み込みします。

バリデーションのエラーメッセージが日本語化されました。
- 0
- 0
- 0
- 0


コメント