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 ...
随机推荐
- html-文本处理集-持续学习更新
文件处理2:分区分块.有序无序 <!-- 申明HTML5版本 --> <!DOCTYPE html> <html lang="en"> < ...
- webservice统一认证
service package cn.edu.hbcf.privilege.ws; import javax.jws.WebParam; import javax.jws.WebService; @W ...
- HDU 2254 奥运(矩阵高速幂+二分等比序列求和)
HDU 2254 奥运(矩阵高速幂+二分等比序列求和) ACM 题目地址:HDU 2254 奥运 题意: 中问题不解释. 分析: 依据floyd的算法,矩阵的k次方表示这个矩阵走了k步. 所以k ...
- k8s入门
一个目标:容器操作:两地三中心:四层服务发现:五种Pod共享资源:六个CNI常用插件:七层负载均衡:八种隔离维度:九个网络模型原则:十类IP地址:百级产品线:千级物理机:万级容器:相如无亿,K8s有亿 ...
- C0302 将一个代码块中的内容保存在文件中, 查看一个rpm包是否可以安装
#!/bin/bash # 这个脚本是用来描述和确认是否可以安装一个rpm包 # 在一个文件中保存输出 SUCCESS=0 E_NOARGS=65 if [ -z "$1" ] t ...
- 【C++自我精讲】基础系列五 隐式转换和显示转换
[C++自我精讲]基础系列五 隐式转换和显示转换 0 前言 1)C++的类型转换分为两种,一种为隐式转换,另一种为显式转换. 2)C++中应该尽量不要使用转换,尽量使用显式转换来代替隐式转换. 1 隐 ...
- 【vijos】1791 骑士的旅行(特殊的技巧)
https://vijos.org/p/1791 暴力的话只想到bfs,然后估计是状态超了才得20分. 噗,为啥暴力就不能想得简单点QAQ.....这种思想很好啊. 这一题我看了题解后不得不说我竟然没 ...
- SpringBoot新增监听器Listener
什么是web监听器? web监听器是一种Servlet中的特殊的类,它们能帮助开发者监听web中的特定事件,比如ServletContext,HttpSession,ServletRequest的创建 ...
- win 8升级win8.1的几个问题
对于习惯了win7来说的小朋友,win8的使用简直有种想砸电脑的冲动啊,特别是玩游戏的小朋友,win8各种bug.对于游戏.咳咳,我只是多说了,我们都是爱学习的好孩子,少玩游戏,少撸.简单说一 ...
- 性能测试:压测中TPS上不去的几种原因分析(就是思路要说清楚)
转https://www.cnblogs.com/imyalost/p/8309468.html 先来解释下什么叫TPS: TPS(Transaction Per Second):每秒事务数,指服务器 ...