laravel的语言包设置
Laravel 本地化语言的功能
所谓本地化语言,就是说在不同的的国家可能使用不同的语言.现在Laravel提供了一个方便的功能,本地化语言支持。
好了,下面让我们来看看如何使用这个神奇的功能吧。
这里本地化语言使用的是Lang
这个类。
例如,我们想要让程序支持中文和英文。
第一步:建立语言包文件
在app目录下有个lang的文件夹,里面默认有个en
的文件夹,这个表示的是英文。
我们再在里面建立一个zh-CN
的文件夹,表示中文。
所有对应的中英文语言文件都应该分别在各自的文件夹里。
我们现在做个简单的实例,想要的效果是在页面里:
中国的用户显示 : “你好!”
其他的用户显示:”Hello!”
我们在en
和zh-CN
里面建立都一个叫做hello.php
en/hello.php
里这样写:
|
|
zh/hello.php
里这样写:
|
|
好了,这就是我们第一步要建立的语言包文件。
第二步:修改语言配置
我们在我们的app/config/app.php
中可以看到
修改里面的两个配置:
|
|
第三步:在页面调用语言包
现在我们新建了语言包文件,并且在配置文件里做好了配置,那么我们如何在页面里调用对应的内容呢?
在我们的模板页面中(我们采用laravel的Blade模板的方式来构建视图),我们可以这样写:
{{Lang::get(‘hello.welcome’)}}
从上面的代码我们可以看到,hello表示的就是hello.php
,welcome表示的就是我们返回数组中的一个键名。
根据上一步app/config/app.php
配置文件里locale
的设置,会显示zh-CN
下hello.php
里面welcome
的值。
那么如果我们在zh-CN
文件夹里没有找到相应的内容,那么就到en
文件夹中进行查找。如果也没有的话。。。你可以试试看会显示什么。
OK,了解了语言包新建、调用的流程以后,我想我们可以尝试着去做更多的事,比如根据访问者的地域,来调用不同的语言配置,或者让用户自己选择不同的语言设置。具体的实现这里就不在讨论。
扩展包
这里有一个laravel的语言扩展包,里面包含了很多语言包,可以根据自己的需要下载或贡献自己制作的内容。