本地化
介绍
Laravel 的 Lang
类提供方便的方法来取得多种语言的字串,让您简单地在应用程序里支持多种语言。
语言文件
语言字串储存在 app/lang
文件夹的文件里。 在这个文件夹里应该要有子文件夹给每一个应用程序支持的语言。
/app
/lang
/en
messages.php
/es
messages.php
语言文件例子
语言文件简单地返回键跟字串的数组。例如:
<?php
return array(
'welcome' => 'Welcome to our application'
);
在执行时变换默认语言
应用程序的默认语言被储存在 app/config/app.php
配置文件。 您可以在任何时候用 App::setLocale
方法变换现行语言:
App::setLocale('es');
设定备用语言
您也可以设定 "备用语言",它将会在当现行语言没有给定的语句时被使用。 就像默认语言,备用语言也可以在 app/config/app.php
配置文件设定:
'fallback_locale' => 'en',
基本用法
从语言文件取得句子
echo Lang::get('messages.welcome');
传递给 get
方法的字串的第一个部分是语言文件的名称,第二个部分是应该被取得的句子的名称。
提示
: 如果句子不存在, get
方法将会返回键的名称。
您也可以使用 trans
辅助方法,它是 Lang::get
方法的别名。
echo trans('messages.welcome');
在句子中做替代
您也可以在语言文件中定义占位符:
'welcome' => 'Welcome, :name',
接着,传递替代用的第二个参数给 Lang::get
方法:
echo Lang::get('messages.welcome', array('name' => 'Dayle'));