发布于:2025-05-26 06:47 阅读次数:21 作者:云码素材 分类:技术分享 关键词:thinkcmf
在使用thinkphp6的过程中,尤其是windows本地开发,要是碰到代码运行错误但是死活不报错的情况,可参考以下步骤:
常规步骤:
1. 环境变量配置文件.env中APP_DEBUG设置为true。
APP_DEBUG=true
2. 将config目录下的app.php文件中的show_error_msg设置为true。
// 显示错误信息
'show_error_msg' => true,
如果上面操作无用,查看服务器(我用的是nginx)的错误日志,发现报错:“PHP Fatal error: Uncaught InvalidArgumentException: Malformed UTF-8 characters, possibly incorrectly encoded in D:\phpStudy\PHPTutorial\WWW\tp6\vendor\topthink\framework\src\think\response\Json.php:50……”。看这个错误意思,再结合源码,这是json_encode()的时候报错了,字符编码的问题。接下来,非常规步骤,改源码!
非常规步骤:
根据路径找到文件:“tp6\vendor\topthink\framework\src\think\exception\Handle.php”。
查看源码,找到“Server/Request Data”,发现tp6获取的服务器信息内容非常的详细,如果你的计算机名为中文,或者某些文件夹名包含中文,那就会因为字符编码,而造成json_encode()报错。既然找到原因了,那就解决问题,转下获取内容的编码即可!
在Handle.php的底部加上字符编码转换函数:
/**
* 将获取的服务器信息中的中文编码转为utf-8
* 修复在开启debug模式时出现的Malformed UTF-8 characters 错误
* @access protected
* @param $data array
* @return array 转化后的数组
*/
protected function changeToUtf8(array $data): array
{
foreach ($data as $key => $value) {
$data[$key] = mb_convert_encoding($value, "UTF-8", "GBK, GBK2312");
}
return $data;
}
然后在获取服务器信息的地方调用转换:
//'Server/Request Data' => $this->app->request->server(),
'Server/Request Data' => $this->changeToUtf8($this->app->request->server()),
这个时候再次发起请求,就可以看到详细的错误信息了!
这个问题曾经困扰了我很久才解决,如果您也碰到了这个问题,且这篇文章帮助到了您,欢迎点赞!
我要加群:资源共享的时代,不要再单打独斗!加小编微信号加入群:xnynews(备注:云码素材入群),qq群号:202498279,一起技术学习,资源分享!
免责声明
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络收集整理,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!
热门标签
推荐模板
Light Year Admin后台模板 v4 iframe版本 基于Bootstrap 4.4.1
2024-10-20 22:57 浏览:198
html清爽ui设计作品集展示网站模板 响应式宣传网页制作代码模板
2024-09-23 10:12 浏览:423
热门文章
2022-05-10 08:48 浏览:31118
2Tik Tok 深田咏美抖音视频100+合集资源免费下载【绿色】
2022-10-31 08:42 浏览:29769
2022-03-27 09:29 浏览:15785
2022-09-11 15:02 浏览:12944
2020-04-13 15:31 浏览:12246
6免费使用chatgpt3种方式 chatgpt国内入口无需梯子
2023-04-23 17:52 浏览:10790
2022-09-08 10:28 浏览:9601
2022-04-13 14:31 浏览:9501
9三个开源的php论坛bbs源码 可自建 圈子 帖子社区网站!
2020-09-15 21:34 浏览:9435
2019-08-28 17:28 浏览:8755