PHP Laravel 本地化语言支持
That`s it. 我发如今网上Laravel的学习资料实在是太少了.好多东西须要自己去弄.去理解.
我的方法另一个,就是去github上面下载老外写的Laravel站点,然后拿下来自己执行,分析代码,然后找出当中的出彩的地方.恩,非常不错的方法.今天让我找到了一个好东西,就是Laravel 本地化语言的功能.
所谓本地化语言,就是说在不同的的国家可能使用不同的语言.那么假设没有适应各个语言的程序,也就意味着程序须要重写.如今Laravel提供了一个方便的功能,本地化语言支持.
好了,以下让我们来看看这些奇妙的功能吧.
Laravel设计模式中非常好的体现了门面的设计模式.将内部细节封装,向外部暴露统一的接口.
这里本地化语言使用的就是Lang这个类.
我们假设想要让程序支持中文和英文.
第一步:
在app目录下有个lang的目录,里面有个en的目录,这个表示的是英文.
我们再在里面建立一个zh的目录,表示中文.
增加我们我们在页面中要实现这种功能
中国的用户显示 : "你好,世界!"
美国的用户显示:"hello world"
我们在en和zh里面建立都一个叫做 tag.php
en/tag.php 里这样写
return array(
"welcome" =>"hello world"
);
zh/tag.php里这样写:
return array(
"welcome" =>"你好,世界"
);
好了,这就是我们要做的第一步
第二步:
我们在我们的config/app.php中能够看到
里面有个
'locale'=>'en', //这个表示默认使用的是lang哪个目录中的内容
'fallback_locale' => 'en', //这个表示的是假设上面目录中的内容不存在时,使用哪个目录中的内容.
第三步:
听起来似乎非常绕口.以下上样例.
在我们的模板页面中我们这样写道
{{Lang::get('tag.welcome')}}
是不是非常熟悉.tag表示的就是tag.php ,welcome表示的就是我们返回数组中的一个键名.从而获取到了数据.
那么究竟是获取哪个目录中的数据呢...
不要问我了吧.上面说的非常清楚了啊...就是通过配置文件里得到的啊...
那么如今假设我们将config/app.php配置文件进行改动.
'locale'=>'zh',
'fallback_locale'=>'en',
那么假设我们在zh文件里没有找到对应的内容,那么就到en目录中进行查找.假设也没有.
那么不好意思,页面中就会显示 比如 tag.welcome的东西.
好了,该部分介绍完成了.我要继续研究了哦.
Persistence makes life valuable.
Best Wishes.
PHP Laravel 本地化语言支持的更多相关文章
- ios调用系统相册、相机 显示中文标题、本地化多语言支持
因为调用系统相册.相机需要显示中文,所以搞了半天才知道是在Project->info->Custom ios Target Properties 添加 Localizations 并加入C ...
- Windows Phone 8本地化多语言支持
原文 Windows Phone 8本地化多语言支持 在WP8平台处理本地化多语言的支持还是比较容易的,大部分工作都有VS IDE处理,开发者只需简单操作,并翻译本地资源即可实现. 无论您目前的应用是 ...
- Windows 8本地化多语言支持
原文:Windows 8本地化多语言支持 在Win8平台处理本地化多语言的支持相对比较容易的,但比WP8稍微复杂一点,并不像WP8平台那样大部分工作都有VS IDE处理,Win8平台的操作基本需要开发 ...
- Android 多语言支持
本文内容 字符串本地化原理 环境 创建项目 测试其他语言 Android 本地化语言 ISO 编码 参考资料 使用 Android 的人越来越多,每天都在增加.因此,当你想把你的应用成功地全球化时,通 ...
- Laravel 本地化定义
1.配置本地化语言Laravel 的本地化语言配置项位于config/app.php: [php] view plain copy 'locale' => 'zh',//当前语言 'fallba ...
- wordpress设置本地化语言
wordpress语言本地化 在wordpress上很多插件不支持本地化语言如:中文,需要本地化,则需要制作本地化语言的po(用于编辑)和mo(用于机器识别)文件.可以没有*.po文件,但是不能没有* ...
- 分享两种实现Winform程序的多语言支持的解决方案
因公司业务需要,需要将原有的ERP系统加上支持繁体语言,但不能改变原有的编码方式,即:普通程序员感受不到编码有什么不同.经过我与几个同事的多番沟通,确定了以下两种方案: 方案一:在窗体基类中每次加载并 ...
- EnumHelper.cs枚举助手(枚举描述信息多语言支持)C#
C#里面经常会用到枚举类型,枚举是值类型对象,如果你想用枚举类型的多属性特性,或者你想在MVC页面上通过简单的值类型转换,将某字段值所代表的含义转换为文字显示,这时候必须要将枚举扩展,是它支持文本描述 ...
- (视频)《快速创建网站》 3.3 国际化高大上 - WordPress多语言支持
本文是<快速创建网站>系列的第7篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 访问本系列目录,请点击:http://devopshub.cn/tag ...
随机推荐
- 清理iOS中的“其他”空间垃圾文件
关于如何清理 iOS 里的"其他"空间的教程,网上搜索那是一大堆,不过都是对于2010年某坛某篇"技术文"的无数次简单复制粘帖,可行性已经被各路尝试者们踩到了地 ...
- [转]解决Access restriction: The type * is not accessible due to restrict
我在eclipse使用org.omg下的东西的时候报此错误 我用的第一种方法解决了问题 转自:http://blog.sina.com.cn/s/blog_6714fba70100x6mz.html ...
- 解决eclipse偶尔无视breakpoint的行为
一般是如果你使用了T[]这样的参数列表,也就是generic array作为参数,你就算给函数打了断点,有时也会被eclipse无视 比如如下代码,你在调试main的时候,eclipse就会把doPa ...
- esp8266必备知识
gpio定义 RX和TX为D9和D10
- maven项目编译:程序包com.sun.image.codec.jpeg不存在 这个类文件的位置在jre/lib/rt.jar
转载:http://superich2008.iteye.com/blog/2047830 失败提示信息为:程序包com.sun.image.codec.jpeg不存在 这个类文件的位置在jre/li ...
- nginx中,$request_uri和$uri的区别
nginx中,$request_uri和$uri的区别 $request_uri This variable is equal to the *original* request URI as r ...
- Create a new Docker Machine with the Hyper-V driver
docker-machine就是docker工具集中提供的用来管理容器化主机的工具,用来管理运行在不同环境的主机,包括:本地虚拟机,远程虚拟机,公有云中的虚拟机都可以通过一个命令统一进行管理. 01. ...
- FOUC - Flash Of Unstyled Content 文档样式闪烁
问题描述 偶然间看到FOUC这个单词,在Google里找了半天终于发现了它的含义:Flash Of Unstyled Content.它指的是在某些情况下,IE在加载网页时会出现短暂的CSS样式失 ...
- PAT004 Root of AVL Tree
题目: An AVL tree is a self-balancing binary search tree. In an AVL tree, the heights of the two child ...
- pycharm重置设置,恢复默认设置
备忘,备忘,备忘 window 系统 找到下方目录-->删除. 再重新打开pycharm # Windows Vista, 7, 8, 10: <SYSTEM DRIVE>\User ...