- 第四天 Services -挑准备做的小项目会用的到的学
Laravel都已经从5.0升级到5.3了,我这TMD刚重新捡起来。以后所有和PHP有关系的小项目都用框架,不能再继续使用自己搞的那套东西了。
Localization
多语言化文件存储的位置
/resources
/lang
/en
messages.php
/es
messages.php
当前应用默认的语言设置在设置文件中 config/app.php
在运行时获取和设置当前使用的Locale
Route::get('welcome/{locale}', function ($locale) {
App::setLocale($locale);
});
获取当前语言设置
$locale = App::getLocale();
if (App::isLocale('en')) { }
缺省语言设置,当希望获取的语言不存在的时候,可以在配置文件中设置缺省语言
'fallback_locale' => 'en',
使用翻译文件
直接使用
使用翻译文件中的String,假设我们的翻译文件为 resources/lang/message.php
其中有一个Key为 welcome
的翻译
echo trans('messages.welcome');
{{ trans('messages.welcome') }} //如果你用了Blade
@lang('messages.welcome')
替换字符串中的文字
'welcome' => 'Welcome, :name',
echo trans('messages.welcome', ['name' => 'dayle']);
// Welcome, dayle
'welcome' => 'Welcome, :NAME', // Welcome, DAYLE
'goodbye' => 'Goodbye, :Name', // Goodbye, Dayle
// 这个大小写的设定真的很赞,哇哈哈哈
单复数的使用,这个点有
'apples' => 'There is one apple|There are many apples',
echo trans_choice('messages.apples', 10);
'apples' => '{0} There are none|[1,19] There are some|[20,Inf] There are many',
网友评论