ホームページ > 記事 > PHPフレームワーク > Laravel の国際化とローカリゼーション: さまざまな言語や地域のニーズに対応する
Laravel の国際化とローカライゼーション: さまざまな言語と地域のニーズを満たす
今日のグローバルな相互接続の時代では、多言語および複数地域を開発します。サポート アプリケーションはますます重要になっています。オープンソースの PHP フレームワークとして、Laravel は豊富な国際化およびローカリゼーション機能を提供し、開発者がアプリケーションをさまざまな言語や地域のニーズに簡単に適応させることができます。この記事ではLaravelでこれらの関数を使う方法を紹介します。
1. 言語ファイルの設定
まず、言語ファイルを設定する必要があります。 Laravelでは翻訳ファイルとしてJSON形式のファイルを使用しており、言語ごとに対応するJSONファイルが存在します。デフォルトでは、これらのファイルは resource/lang ディレクトリに保存されます。必要に応じて、このディレクトリの下に en (英語) や zh-CN (簡体字中国語) などのさまざまな言語でサブディレクトリを作成できます。
次に、言語ファイルを作成する必要があります。対応する言語のサブディレクトリに、en.json などの新しい JSON ファイルを作成します。このファイルでは、さまざまな変換キーと値のペアを定義できます。例:
{
"welcome": "Welcome to our website",
"contact_us": "Contact Us"
}
2. 翻訳を使用する
言語ファイルを設定したら、アプリケーションで対応する翻訳を使用できます。ビューファイルの場合、Laravel が提供する @lang ディレクティブを翻訳に使用できます。例:
<meta charset="UTF-8"> <title>@lang('welcome')</title>
<h1>@lang('welcome')</h1> <p>@lang('contact_us')</p>
上記の例では、@lang ディレクティブを使用して、「welcome」と「contact_us」を対応する言語テキストに翻訳します。ユーザーの言語設定に基づいて、Laravel はレンダリング用に適切な翻訳されたテキストを自動的に選択します。
コントローラーまたはモデル内で変換する場合は、Laravel が提供する trans メソッドを使用できます。例:
public functionindex()
{
$welcome = trans('welcome');
$contactUs = trans('contact_us');
return view( ' welcome', Compact('welcome', 'contactUs'));
}
上記のコードでは、trans メソッドを通じて翻訳テキストを変数に割り当て、これらの変数をビュー。
3. 動的な言語切り替え
Laravel は静的な言語翻訳に加えて、動的な言語切り替えの機能も提供します。これは、ユーザーがアプリケーション内で異なる言語を動的に選択できることを意味します。この機能を実現するには、アプリケーションのロケールを設定する必要があります。
config/app.php ファイルには、ロケール配列があります。配列に、サポートされている言語コードと対応する名前を追加します (例:
'locales' => [
'en' => 'English',
'zh-CN ') => '簡体字中国語'
]
次に、言語を切り替える必要がある場合は、Laravel が提供する setLocale メソッドを使用してロケールを設定できます。例:
public function switchLocale($locale)
{
App::setLocale($locale);
return redirect()->back();
}
上記のコードでは、setLocale メソッドを使用してロケールを設定し、redirect メソッドを使用してユーザーを前のページにリダイレクトします。
上記の手順により、Laravelアプリケーションで言語を動的に切り替える機能を実現できます。
結論
Laravel の国際化機能とローカリゼーション機能により、開発者はさまざまな言語や地域のニーズに簡単に対応できます。言語ファイルを構成し、翻訳命令やメソッドを使用し、動的な言語切り替えを実装することで、グローバル アプリケーションを構築できます。グローバル市場向けの製品を開発している場合でも、特定地域のユーザー向けにアプリケーションをカスタマイズしている場合でも、Laravel の国際化およびローカリゼーション機能は優れたサポートを提供します。
参照コード:
<meta charset="UTF-8"> <title>@lang('welcome')</title>
<h1>@lang('welcome')</h1> <p>@lang('contact_us')</p>
パブリック関数 Index()
{
$welcome = trans('welcome'); $contactUs = trans('contact_us'); return view('welcome', compact('welcome', 'contactUs'));
}
パブリック関数 switchLocale($locale)
{
App::setLocale ($locale);
return redirect()->back();
}
以上がLaravel の国際化とローカリゼーション: さまざまな言語や地域のニーズに対応するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。