メニュー

多言語化

Laravelの多言語化に関する記事です。

メッセージファイルの配置

メッセージのファイルを「resources/lang」ディレクトリに配置しましょう。

以下の構成を参考にして下さい。

/resources
    /lang
        /en
            messages.php
        /jp
            messages.php

上記の例では「message.php」としていますが、用途によりファイルを分割して任意の名前を付けて下さい。

メッセージファイルの中身は以下の様に連想配列として格納します。

<?php
return [
    'password' => 'Passwords must be at least six characters and match the confirmation.',
    'reset' => 'Your password has been reset!',
];

 

言語設定

デフォルトの言語は「config/app.php」の「locale」にて指定されていますが、今回はURLにより言語を分離させます。

以下のように実装してみましょう。

Route::get('index/{locale}', function ($locale) {
    App::setLocale($locale);
});

「index」の後に指定されたロケールにより使用する言語が異なるようになります。

言語が存在しない場合のデフォルト言語は以下の様に設定します。

'fallback_locale' => 'en',

 

言語の表示

Bladeテンプレートエンジンを使用している場合は以下の表記で翻訳文字を表示できます。

{{ __('messages.password') }}

@lang('messages.password')

 

Bladeテンプレートエンジンを使用していない場合は以下の表記を。

echo __('messages.password');

 


子記事一覧
子記事はありません

同階層の記事一覧
  1. インストール方法
  2. クイックスタート & チュートリアル(初心者向け)
  3. クイックスタート & チュートリアル(中級者向け)
  4. ルーティング
  5. ビュー/レイアウト
  6. Bladeテンプレート
  7. コントローラー
  8. マイグレーションとテーブル定義
  9. データベース
  10. Eloquentモデル (ORM)
  11. SQLとクエリビルダー
  12. バリデーション
  13. .envファイルの設定値へのアクセス
  14. 動作環境による分岐処理
  15. configフォルダ配下の設定値へのアクセス
  16. assetヘルパーを利用したpublicフォルダへのアクセス
  17. storageフォルダへのアクセス
  18. アプリケーション名の変更
  19. メンテナンス
  20. ログイン画面(認証システム)の作成
  21. ログインユーザー情報の取得
  22. ルートの認証化
  23. 本番サーバーへのデプロイ方法
  24. 多言語化
  25. csrf_field
  26. ファイルのダウンロード
  27. CSVのアップロードおよび読み込み(maatwebsite/excel)
  28. ページタイトルの設定
  29. コマンド一覧
  30. エラー一覧
  31. SQLの実行ログ出力方法
  32. キャッシュのクリア
  33. Selectの結果の最初もしくは最後に任意の値を追加する方法
  34. コントローラー内で他のコントローラーを呼び出す方法
  35. ajaxでPOST通信する際の注意点
  36. ソーシャルログインの実装
  37. セッション情報の確認
  38. ログイン、ユーザー登録、パスワードリセット後のリダイレクト先の変更方法
  39. redirectやreturn viewにメッセージを付与する方法
  40. クッキー(cookie)の設定と取得
  41. クラスの再読み込み
  42. csrfの有効時間を変更する方法


■ 詳細情報
■ 過去バージョン
■ 記事の差分


最近コメントのあった記事

コメント一覧


コメントがありません