klisl / laravel-locale
为Laravel-5创建多语言网站
1.9
2018-04-03 13:04 UTC
Requires
- php: >=5.4.0
- laravel/framework: ^5.3
README
这是一个用于在Laravel-5框架上创建多语言网站的包。当前语言会显示在URL中(除主语言外)。
点击相应的链接可以更改语言。也可以直接在地址栏中更改语言。不使用会话和cookie。代码简洁,注重性能。
此包根据您选择的语言设置应用程序的当前本地化。相应地使用该本地化的语言文件。
安装
使用Composer安装此包。
composer require klisl/laravel-locale
如果Laravel版本小于5.5,请将以下代码添加到您的项目文件config/app.php
中的providers
数组末尾
Klisl\Locale\LocaleServiceProvider::class,
对于>=5.5的版本,可以跳过此步骤。
之后,在控制台中执行发布所需资源的命令
php artisan vendor:publish --provider="Klisl\Locale\LocaleServiceProvider"
使用
在配置文件config\languages.php
中,您需要指定主语言(其标识符不应显示在URL中)以及您打算使用的语言。默认主语言是俄语,使用的语言包括俄语、乌克兰语和英语。
为了显示语言切换链接,请将以下字符串插入到相应的模板中
@include('locales.locale')
这将连接到模板resources\views\locales\locale.blade.php
,您可以根据应用程序的设计来调整其外观。
创建网站其他页面的链接
1. 使用route()函数,与平常一样
<a href="{{ route('home') }}">Home</a>
2. 直接在href属性中指定URI。这里需要调用LocaleMiddleware类的静态方法getLocale()
<a href="{{ Klisl\Locale\LocaleMiddleware::getLocale() .'/home' }}">Home</a>
我的博客: klisl.com