关于TP5多语言BUG的解决办法(直接上代码)

2023-11-14

按照手册配置,默认语言没有反应,跳转页面之后,也没有检测当前的语言,很尴尬!!!

//最大的bug在这里

1.请用下面代码覆盖 thinkPhp/library/think/Lang.php 里面的detect()自动检测语言方法

 

 /**
     * 自动侦测设置获取语言选择
     * @access public
     * @return string
     */
    public static function detect() {
// 自动侦测设置获取语言选择
        $langSet = Config::get('default_lang');
        if (isset($_GET[self::$langDetectVar])) {
// url中设置了语言变量
            $langSet = strtolower($_GET[self::$langDetectVar]);
            Cookie::set(self::$langCookieVar, $langSet, 3600);
        } elseif (Cookie::get(self::$langCookieVar)) {
// 获取上次用户的选择
            $langSet = strtolower(Cookie::get(self::$langCookieVar));
        } elseif ($langSet) {
// 获取默认语言
            Cookie::set(self::$langCookieVar, $langSet, 3600);
        } elseif (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
// 自动侦测浏览器语言
            preg_match('/^([a-z\d\-]+)/i', $_SERVER['HTTP_ACCEPT_LANGUAGE&
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

关于TP5多语言BUG的解决办法(直接上代码) 的相关文章

  • TP5的select,find和get查询方法的使用

    select查询出的是多条数据 xff0c 需要在模版volist循环打印出来 find和get获取单条数据 xff0c 可直接在模版打印 xff1b user 61 User get span class hljs number styl
  • tp5 A non-numeric value encountered解决方法

    报错信息如下 解决方法 xff1a 在对应的控制器方法加入下面这行代码即可 ini set 34 error reporting 34 34 E ALL amp E NOTICE 34
  • TP5 + PHPWord导出word文档中文出现乱码的问题

    场景 xff1a 项目需要将html页面转word文档 1 下载安装phpword插件composer require phpoffice phpword 2 安装成功在tp目录下的vendor会出现phpoffice文件夹 xff0c 说
  • tp5 修改使用个人的success、error跳转页面

    我们使用tp5或者tp3 2的框架 用的成功或者失败跳转提示页面一般是用框架的 根据我们自己开发的项目 我们也需要将跳转提示页面更改成自己的样式 如果我们直接更改框架源码页面会影响我们后期的框架升级 其实有解决办法 tp官方已经考虑到了这一
  • tp5在数据库中获取随机数据

    private function random data num table where field order pk id countcus Db name table gt field pk gt where where gt sele
  • PHP-Tpthink5学习记录1(后台管理平台)

    Mysql数据库Mac安装 https www cnblogs com yanlin 10 p 9388911 html Tp5安装 方式一 http www thinkphp cn donate download id 874 html
  • C#实现多语言切换(通过Resource语言包文件实现)

    点我 下载多语言切换项目最全源码 1 先说说Resources语言包文件是怎么来的 通过Visual Studio 命令提示工具将txt文件转换成resources文件 具体操作 a 打开Visual Studio 命令提示工具 然后输入你
  • TP5 FIND_IN_SET和数组组合成查询条件

    直接上代码 我的是TP5 0 22版本 map exp Db raw FIND IN SET 字段所包含的值 字段 map status 1
  • 海豚php上传音频方法(引用 layui的 js 与 css)

    1 html代码 div class layui upload div div div
  • phpstorm插件集合

    插件安装方法有两种 Files gt Settings gt Plugins gt browse repositories Files gt Settings gt Plugins gt Install plugin from disk 1
  • TP5 阿里云短信验证

    方法一 1 composer下载 composer require mrgoon aliyun sms 2 验证方法代码 短信验证 public function sms Request request 接收参数 tel request g
  • TP5+Fastadmin+Log日志

    Log 日志 1 引入类 use think Log 2 记录日志 通过Log类的record 方法 记录一条日志 Log record 这是一条普通日志 记录一个错误级别的日志 使用error 方法 Log error 这是一条错误日志
  • TP5 Fatal error: Class 'think\Route' not found

    1 使用验证码了时 使用Composer安装think captcha扩展包 composer require topthink think captcha 报错 Fatal error Class Route not found in D
  • Scratch 3.0源码 之 多语言实现

    文章目录 实现方式 初始版本 多语言版本 1 页面文件 2 配置文件 3 建立关联 语法说明 案例1 带HTML标签写法 建议写法 案例2 带超链接写法 建议写法 Scratch 3 0中各类显示文本默认是英文 如果不支持自己的语言 或者自
  • tp5,php将数组转化为字符串

    al array为数组 al array new implode al array implode将把数组的元素用逗号分割 al array new为以逗号为分隔符的字符串 补充 字符串转数组 explode str 下面有个问题 带键值的
  • tp5的分页方法 paginate

    tp5的分页方法paginate 一共有三个参数 其中 listRows可以为整型或者数组 当是数组的时候 你传入的 config就会失效 原因是 paginate的源代码 所以说 如果你想重新配置参数 那 listRows就传数组 否则的
  • 关于TP5多语言BUG的解决办法(直接上代码)

    按照手册配置 默认语言没有反应 跳转页面之后 也没有检测当前的语言 很尴尬 最大的bug在这里 1 请用下面代码覆盖 thinkPhp library think Lang php 里面的detect 自动检测语言方法 自动侦测设置获取语言
  • C#上位机软件支持中英文多语言切换MultiLanguage

    最近遇到一个项目 客户是国外的 开发上位机程序是在中国 需支持中英文多语言切换 多语言切换思路 使用不同的xml配置文件来映射不同的语言 窗体加载时从默认语言DefaultLanguage xml中读取配置 比如中文语言 对应Chinese
  • TP5使用predis

    1 安装 composer require predis predis 2 使用 use use Predis Client class Index 使用predis public function index 配置连接的IP 端口 以及相
  • ThinkPHP 5 框架实现多语言 实例讲解

    ThinkPHP 5 框架实现多语言 今天给大家分享一篇tp5框架多语言的实例 第一步 您需要在配置文件中开启网站多语言 并添加语言允许列表 默认语言 default lang gt zh cn 语言允许列表 lang list gt zh

随机推荐

  • 开心档-软件开发入门之Bootstrap4 按钮

    Bootstrap4 按钮 Bootstrap 4 提供了不同样式的按钮 实例
  • 还是畅通工程(水题) kruskal算法

    http acm hdu edu cn showproblem php pid 1233 Problem Description 某省调查乡村交通状况 得到的统计表中列出了任意两村庄间的距离 省政府 畅通工程 的目标是使全省任何两个村庄间都
  • Techniques for working with Big Data

    In the Big data it can be text data digital image data digital video data digital audio data and more Consequently with
  • 202.为用户定义的数据类型绑定规则案例

    示例说明 下面的示例演示了如何把规则绑定到列和用户定义的数据类型 并且演示了修改绑定于列和用户定义的数据类型的规则时 这两者之间的差异 定义数据类型 EXEC sp addtype ut age int null GO 为ut age定义规
  • 四层协议和七层协议详解

    一 TCP IP网络分层模型 四层协议 TCP IP的设计者创造性的提出 分层 的概念 把复杂的网络通信划分出多个层次 再给每一层分配不同的职责 采用 分而治之 的方法解决了网络通信的难题 TCP IP是一个纯软件的栈 缺少物理设备 TCP
  • 通过IP地址进行精准定位技术、方法与隐私问题的探讨

    导语 随着互联网和移动设备的普及 通过IP地址进行精准定位已成为现实 这一技术的发展带来了许多便利 但也引发了隐私问题的关注 本文将探讨通过IP地址进行精准定位的技术 方法以及涉及的隐私问题 技术和方法 IP地址的基本原理 IP地址是一个数
  • Elasticsearch使用系列-ES增删查改基本操作+ik分词

    一 安装可视化工具Kibana ES是一个NoSql数据库应用 和其他数据库一样 我们为了方便操作查看它 需要安装一个可视化工具 Kibana 官网 https www elastic co cn downloads kibana 和前面安
  • vue自定义指令---长按执行

    首先创建longpress js文件 import Vue from vue Vue directive longpress bind function el binding vNode if typeof binding value fu
  • Java中Transactional注解业务方法里面try catch会导致事务注解失效吗

    在 Java 中 使用 try catch 语句来捕获异常是很常见的 但是 在使用了 Transactional 注解的业务方法内部使用 try catch 语句并不会导致事务注解失效 当在带有 Transactional 注解的方法中使用
  • 【MifareClassicTool】小米NFC手机模拟加密门禁详细教程(Android手机通用)

    mifare官方最新版地址https www icaria de mct releases 3 0 资源名称 MifareClassicTool 资源分类 Android NFC类软件 资源大小 960 5 Kb 资源版本 V2 2 3 准
  • python中chr()函数和ord()函数的用法

    Python内置函数 一 chr 函数 格式 Chr lt 数值表达式 gt 说明 函数返回值类型为String 其数值表达式值取值范围为0 255 以下是 chr 方法的语法 chr i i 可以是10进制也可以是16进制的形式的数字 返
  • 【Matting】MODNet:实时人像抠图模型-笔记

    paper MODNet Real Time Trimap Free Portrait Matting via Objective Decomposition AAAI 2022 github https github com ZHKKKe
  • 无向图染色

    题目描述 给一个无向图染色 可以填红黑两种颜色 必须保证相邻两个节点不能同时为红色 输出有多少种不同的染色方案 输入描述 第 行输入M 图中节点数 N 边数 后续N行格式为 V1V2表示一个V1到V2的边 数据范围 1 lt M lt 15
  • Java中抽象类和接口区别

    简单概括下Java中抽象类和接口直接的区别 可以概括为如下几点 1 一个类可以实现多个接口 但却只能继承最多一个抽象类 2 抽象类可以包含具体的方法 接口的所有方法都是抽象的 3 抽象类可以声明和使用字段 接口则不能 但接口可以创建静态的f
  • CAT1和CAT4的区别

    现今 CAT1的发展势头一直很迅猛 那为什么CAT4不能替代CAT1的地位呢 我们来看下面几点 成本 1 网络建设方面 Cat1可以无缝接入现有LTE网络当中 无需针对基站进行软硬件升级 网络覆盖成本低 2 芯片成本方面 经过系统优化后 模
  • 在vue3项目中使用新版高德地图

    高德开发平台 高德开放平台 高德地图API amap com 1 首先你要注册好账号登录 2 获取key和密钥 自2021年12月02日升级 升级之后所申请的 key 必须配备安全密钥 jscode 一起使用 NPM方式安装和使用 基础版
  • 【VS2019/C++/报错】由于找不到libmysql.dll/由于找不到libssl-1_1-x64.dll,无法继续执行代码

    错误描述 属性页的包含目录和库目录都加了 链接器的lib也加了 但是运行时报错找不到libmysql dll 把libmysql dll文件放到项目文件夹内和系统文件夹C Windows SysWOW64都没用 开始报 找不到libssl
  • android AndroidManifest的category

    CATEGORY ALTERNATIVE 设置这个activity是否可以被认为是用户正在浏览的数据的一个可选择的action CATEGORY APP BROWSER 和ACTION MAIN一起使用 用来启动浏览器应用程序 CATEGO
  • SystemviewV3.3工具使用

    SystemviewV3 3工具使用 工具下载 移植 错误解决方式 使用方法 工具下载 Systemview下载地址 移植 以不带操作系统的移植方式为例 移植源码位于 工程加入以下文件 错误解决方式 keil下多重定义问题 Objects
  • 关于TP5多语言BUG的解决办法(直接上代码)

    按照手册配置 默认语言没有反应 跳转页面之后 也没有检测当前的语言 很尴尬 最大的bug在这里 1 请用下面代码覆盖 thinkPhp library think Lang php 里面的detect 自动检测语言方法 自动侦测设置获取语言