子沫
thinkphp5多语言切换
03/31
本文最后更新于2021年04月10日,已超过1342天没有更新。如果文章内容或图片资源失效,请留言反馈,我会及时处理,谢谢!
config.php 两个配置:
'lang_switch_on' => true,'lang_list' => ['zh-cn','en-us'],
进入Lang.php
/**
* 自动侦测设置获取语言选择
* @return string
*/
public static function detect()
{
// 自动侦测设置获取语言选择
$langSet = '';
// if (isset($_GET[self::$langDetectVar])) {
if (cookie('think_var')) {
// url中设置了语言变量
// $langSet = strtolower($_GET[self::$langDetectVar]);
$langSet = strtolower(cookie('think_var'));
} elseif (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
// 自动侦测浏览器语言
preg_match('/^([a-z\d\-]+)/i', $_SERVER['HTTP_ACCEPT_LANGUAGE'], $matches);
$langSet = strtolower($matches[1]);
$acceptLangs = Config::get('header_accept_lang');
if (isset($acceptLangs[$langSet])) {
$langSet = $acceptLangs[$langSet];
} elseif (isset(self::$acceptLanguage[$langSet])) {
$langSet = self::$acceptLanguage[$langSet];
}
}
if (empty(self::$allowLangList) || in_array($langSet, self::$allowLangList)) {
// 合法的语言
self::$range = $langSet ?: self::$range;
}
return self::$range;
}
添加语言包
控制器
页面
版权属于:
Strjson博客-专注于各种精品源码、精品软件、技术教程分享、黑客技术、破解教程(爱你在心口难开、没事写一写)
本文链接:
https://jpgke.com/jishu/58.html(转载时请注明本文出处及文章链接)
作品采用: