按tp8文档里面的来设置,然后切换失败
兜兜转转,不停测试,最终还是得靠搜索引擎,最终的解决方法是在/app/middleware.php中添加下面这行,没有该文件就自己创建一下
// 这是系统自动生成的middleware定义文件
return [
// 自定义全局中间件
//多语言添加下面这一行即可
think\middleware\LoadLangPack::class,
];
然后是config/lang.php配置里面将default_lang设置为空
// +----------------------------------------------------------------------
// | 多语言设置
// +----------------------------------------------------------------------
return [
// 默认语言
'default_lang' => '', //设置为空
// 允许的语言列表
'allow_lang_list' => ['zh-cn', 'en-us'],
// 多语言自动侦测变量名
'detect_var' => 'lang',
// 是否使用Cookie记录
'use_cookie' => true,
// 多语言cookie变量
'cookie_var' => 'think_lang',
// 多语言header变量
'header_var' => 'think-lang',
// 扩展语言包
'extend_list' => [],
// Accept-Language转义为对应语言包名称
'accept_language' => [
'zh-hans-cn' => 'zh-cn',
],
// 是否支持语言分组
'allow_group' => true,
];
切换只需要入cookie里面写入就OK了
cookie('think_lang',‘en-us’);