ThinkPHP 多语言的实现

时间:2022-05-17 15:52:14

1、按照官方文档进行修改

2、注意区分项目语言包和系统语言包

3、实现语言包和数据库语言同步切换

4、thinkPHP多语言实现与Cookie有关,

谷歌浏览器下按F12查看Request Headers 下面的cookie信息可以看到相关信息(think_language=zh-cn)

think_language 随语言切换而变化;所以按照官方文档进行修改之后,可以不再用链接后面加“?l=zh-cn”的方式实现多语言切换,

可以直接修改cookie,然后刷新页面来实现语言的切换(之所以使用这样的实现方式;原因是当我项目在lnmp环境下,使用IE浏览器切换语言失败了,然后发现cookie没有被修改)

PHP 后台代码实现:

    function languagesel($lang="zh-cn")
{
switch($lang){
case 1:
cookie('think_language','zh-cn');
break;
case 2:
cookie('think_language','ko-kr');
break;
case 3:
cookie('think_language','zh-tw');
break;
case 4:
cookie('think_language','en-us');
break;
}
return true;
}

 

实用链接:

ThinkPHP完全开发手册3.1 多语言

thinkphp3.1 多语言简单demo

总结ThinkPHP使用技巧经验分享(二)

多语言用户选择机制