1、配置本地化语言
Laravel
的本地化语言配置项位于config/app.php:

[php] view
plain
 copy

'locale' => 'zh',//当前语言

'fallback_locale' => 'en',//备用语言


2、创建翻译文件

翻译文件所在目录为resources/lang,在此创建 zh/auth.php文件

[php] view plain copy

return [

'username'=>'用户名',

'password'=>'密码',

'rememberme'=>'记住密码',

'login'=>'登录',

'badpassword' => '用户名或密码错误.',

];


3、在代码中实现 使用 trans()方法  实现本地化显示
[php] view plain copy
  1. <div class="form-group">
  2. <label class="col-lg-4 control-label">{{trans('auth.username')}}</label>
  3. <div class="col-lg-6">
  4. <input type="text" class="form-control" name="name" value="{{old('name')}}" autofocus/>
  5. </div>
  6. </div>

4、如没有定义翻译你会返回整个字符串,可以封装自己封装的trans函数

创建app/Libraries/helpers.php文件,添加代码

[php] view plain copy
  1. if(!function_exists('ts')){
  2. function ts($code,$lang='zh'){
  3. $lang= empty($lang)?'zh':$lang;
  4. $code= preg_replace('/[^0-9a-zA-z.-_ ]/', '', $code);
  5. $trans=trans($code,[],'',$lang);
  6. if(empty($trans)||$trans==$code){
  7. $trans= ucwords(preg_replace('/([0-9a-zA-z-_ ]*[.])*/', '', $code));
  8. }
  9. return $trans;
  10. }
  11. }


在根目录下composer.json文件中修改代码
[php] view plain copy
  1. "autoload": {
  2. "classmap": [
  3. "database"
  4. ],
  5. "files": [
  6. "app/helpers.php",
  7. "app/Libraries/helpers.php"  //新添加
  8. ],
  9. "psr-4": {
  10. "App\\": "app/"
  11. }
  12. },


执行 composer dumpautoload

之后在项目、 模板中就可以使用 ts() 函数了

[php] view plain copy
  1. {{ts('auth.login')}}


5、有时候需要动态的切换语言,通过URL传递参数,动态实现本地化
[php] view plain copy
  1. function setLocalLang(Request $request) {
  2. $lang=$request->lang;
  3. App::setLocale($lang);
  4. }

Laravel 本地化定义的更多相关文章

  1. PHP Laravel 本地化语言支持

        That`s it. 我发如今网上Laravel的学习资料实在是太少了.好多东西须要自己去弄.去理解. 我的方法另一个,就是去github上面下载老外写的Laravel站点,然后拿下来自己执行 ...

  2. laravel路由定义

    参考http://www.ruchee.com/notes/fms/laravel_primer.html 路由 路由定义位置在 app/routes.php 文件,支持五种路由方法,采用回调函数的形 ...

  3. laravel本地化扩展包的下载使用

    1.下载扩展包 composer require caouecs/laravel-lang:~3.0 2.下载完成之后在根目录下的vendor中caouces\src下就是语言的扩展包 2.1我们复制 ...

  4. Laravel Vuejs 实战:开发知乎 (3)本地化和自定义消息

    1.本地化 由于所有blade默认采用的是 _('')方式输出标签文本,所以可以安装一个语言包,直接指定本地语言为zh_CN即可: 安装 https://github.com/caouecs/Lara ...

  5. 【转】下载量最高的 100 个 Laravel 扩展包推荐

    说明 Laravel 另一个令人喜欢的地方,是拥有活跃的开发者社区,而活跃的开发者社区带来的,是繁华的扩展包生态. 本文对 Packagist 上打了 Laravel 标签 的扩展包进行整理,截止到现 ...

  6. iOS 开发学习35 本地化

    增新语言 打开Project-Info-Localizations 点击Localization下的+ 新增语言 定义多语言文件 新增String Files 在Supporting Files上.新 ...

  7. 使用vue.js + laravel开发单页面应用

    最近学了vuejs和laravel,然后顺便就撸了简单的demo,这里将会根据这个demo介绍下如何使用vuejs+laravel开发一个简单的单页面应用,demo的github地址是https:// ...

  8. Github上Laravel开源排行榜Star数31-60名

    Github上Laravel开源排行榜Star数31-60名,罗列所有 Laravel 开源扩展包,含 Github Star 数量,下载数量和项目简介.默认排序是按Star数量从多到少来排 31.c ...

  9. 关于Laravel框架

    第1讲-Laravel介绍 1.1 什么是Laravel laravel是目前一个比较主流的框架,现在很多互联网的公司都在使用该框架.该框架的前身是symfony框架 Laravel的定位就是做一个简 ...

随机推荐

  1. Hadoop使用场景

    Hadoop使用场景: 大数据量存储:分布式存储 日志处理: Hadoop擅长这个 海量计算: 并行计算 ETL:数据抽取到oracle.mysql.DB2.mongdb及主流数据库 使用HBase做 ...

  2. 如何在Windows中使用netsh命令进行端口转发

    自Windows XP开始,Windows中就内置网络端口转发的功能.任何传入到本地端口的TCP连接(IPv4或IPv6)都可以被重定向到另一个本地端口,或远程计算机上的端口,并且系统不需要有一个专门 ...

  3. 动态html处理和及其图像识别

    爬虫(Spider),反爬虫(Anti-Spider),反反爬虫(Anti-Anti-Spider) 之间恢宏壮阔的斗争... Day 1 小莫想要某站上所有的电影,写了标准的爬虫(基于HttpCli ...

  4. uva140-暴力枚举

    题意:任意一个点都至少有一个点与其相连接,所有的点可以进行任意排列,总排列数为n!. 一个点带宽定义与它相连的点的最远距离,一个排列的带宽定义为,点中最大的带宽,找出带宽最小的那个排列,有多组,输出字 ...

  5. UVA439-水题

    题意:一只棋盘上的马,从一个点到另外一个点要走多少步 解法:广搜 #include<stdio.h> #include<iostream> #include <strst ...

  6. laravel5.4安装的报错

    laravel5.4安装的报错 [InvalidArgumentException] Could not find package laravle/installer at any version f ...

  7. iTunes 错误 -50

    iTunes,给苹果安装软件,这个软件的体验这么差!!! 手机上基本打不开AppStore,用电脑iTunes,经常莫名其妙的错误代码冒出. 速度奇慢无比. error -50 打开iTunes -- ...

  8. win10 QQ远程协助部分界面点不了

    win10 QQ远程协助部分界面点不了. 把对方电脑的电脑管家全部退出,退出了也不行. 是win10的防火墙?安全策略?

  9. Java 8 日期时间API

    Java 8一个新增的重要特性就是引入了新的时间和日期API,它们被包含在java.time包中.借助新的时间和日期API可以以更简洁的方法处理时间和日期; 在介绍本篇文章内容之前,我们先来讨论Jav ...

  10. SecureCRT去除关闭Session的确认窗口提示