laravel如何实现多语言切换


方案1--zh-CN.json 自定义配置文件

这是 Laravel 提供的本地化特性,使用 __() 函数来辅助实现。按照约定,本地化文件存储在 resources/lang 文件夹中,为 JSON 格式。在 config/app.php 文件中,我们设置了:

'locale' => 'zh-CN',

对应翻译文件就是 resources/lang/zh-CN.json ,需新建此文件:

resources/lang/zh-CN.json

{
    "Login": "登录",
    "Password": "密码",
    "Remember Me": "记住我"
}

方案2--使用中文语言包

会有很多人会遇到翻译 Laravel 自带模板的问题,所以我们无需自己一个个去翻译,这种通用的问题找找扩展包来处理即可。

我们将使用 Laravel Lang 项目来实现,此项目支持了 52 个国家的语言,使用以下命令安装:

$ composer require "overtrue/laravel-lang:~3.0"

完成上面的操作后,将项目文件 config/app.php 中的下一行

Illuminate\Translation\TranslationServiceProvider::class,

替换为:

Overtrue\LaravelLang\TranslationServiceProvider::class,

Laravel Lang 同自定义语言包一样,都是根据 config/app.php 里 locale 的选项来选择语言的。

值得一提的是,如果你想修改扩展包提供的语言文件,可以使用以下命令发布语言文件到项目里:

$ php artisan lang:publish zh-CN

作者介绍

Image Description

zfajax舫

小时候的梦想是当宇航员,长大的梦想是在北京买套90㎡房的小站长、自媒体人,2014年毕业,后从事过网站开发搭建工作;2016年,创建了张舫博客;20015-至今在北京工作(微信:a7983310)

评论列表

还没有人评论,抢占前排沙发

发表评论

关于作者

Image Description

zfajax舫

小时候的梦想是当宇航员,长大的梦想是在北京买套90㎡房的小站长、自媒体人,2014年毕业,后从事过网站开发搭建工作;2016年,创建了张舫博客;20015-至今在北京工作(微信:a7983310)

关注作者

Social Links

定制项目外包

Unit 25 Suite 3, 925 Prospect PI,
Beach Resort, 23001

手机号码

18600004319