php中英文语言包,thinkphp 中英文语言包

可以根据手册提示,在应用的配置目录下面的行为定义文件tags.php

return array(

// 添加下面一行定义即可

'app_begin' => array('Behavior\CheckLang'),

);

在项目配置文件里,添加

'LANG_SWITCH_ON' => true, // 开启语言包功能

'LANG_AUTO_DETECT' => true, // 自动侦测语言 开启多语言功能后有效

'LANG_LIST' => 'zh-cn,zh-en', // 允许切换的语言列表 用逗号分隔

'VAR_LANGUAGE' => 'l', // 默认语言切换变量

然后,你就可以在项目里添加Lang这个语言文件夹了,里面可以放你的语言包

c8ac35943473b5d7484a14704c7a0628.png

分别对应中文,和英文语言包文件

但是一般网站来说,都是交由编辑人员来处理的。不可能改个字,又找到程序员,打开文件来改动

要实现后台对于中英文的修改,可在后台,添加一个控制器,来进行程序

53c59afc07ce0ad60c501103d9397996.png

思路是,创建一个lang表,来存字段

2823e5261a1c34044cbed8cdd055fadd.png

lang_name为前台调用时用的

cn_name为该字段的中文

en_name为该字段的英文

控制器里代码如下

index只是做后台列出来而已

update为字段中英文的更新

updateLangCache为生成语言包文件,也就是zh-cn.php和zh-en.php文件修改过后的重新生成

116ccd1d83eb7d507a392b053ae8b67f.png

页面代码,就是用ajax来进行修改

$(function(){

var textareaId = '';

var textareaVal = '';

$('td textarea').focus(function(){

textareaVal = $(this).val();

textareaId = $(this).attr('data-id');

$(this).addClass('focusNow');

})

$('td textarea').blur(function(){

var textareaValed = $(this).val();

var textareaType = $(this).attr('data-type');

if(textareaValed != textareaVal){

$.ajax({

url:"{:U('update')}",

data:{'id':textareaId,'type':textareaType,'textval':textareaValed},

type:'post',

dataType:'json',

success:function(result){

console.log(result);

return false;

if(result.status){

alert(result.msg);

}else{

alert(result.msg);

}

}

})

}

$(this).removeClass('focusNow');

})

})

因为是thinkphp根据浏览器自动判断当前用户的浏览器支持语言来定位,中英文。

测试的时候,可以, 域名/?l=zh-en或者 域名/?l=zh-cn 来测试中英文

也可以<?php echo cookie('think_'language); ?>来知道当前的浏览器语言

后台,完成后的,效果如下

0d6d528a03b71863ba79bc9a9aeaa751.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值