thinkphp 服务器500错误,Uncaught InvalidArgumentException: Malformed UTF-8 characters的一个特殊原因
PHP Fatal error: Uncaught InvalidArgumentException: Malformed UTF-8 characters, possibly incorrectly encoded in D:\phpstudy_pro\WWW\www.demo.com\vendor\topthink\framework\src\think\response\Json.php:50
这个错的原因是服务器mysql版本是5.6,而我这台机子的版本是5.7,这样导致字符集问题?
我看了下两个版本的字符集都是utf8的,问题出在哪呢?
mysql> show variables like 'character%'; +--------------------------+--------------------------------------------------------+ | Variable_name | Value | +--------------------------+--------------------------------------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | +--------------------------+--------------------------------------------------------+
最近换了太开发机子,登录时报服务器500错误,经测试Session::set(config("admin.admin_session_name"), ['id'=>1]);报这个错,如果换成Session::set('username',['id'=>1]);这样写却不报错
AdminUser::where("username" ,$username) ->findOrempty();这样写也会报这个错误
查找了半天找不到原因,由于Session::set(config("admin.admin_session_name"), ['id'=>1]);这个似乎没有涉及到sql数据呀,所以迟迟没找到是数据库版本的原因
[21-Jun-2023 11:54:27 Asia/Shanghai] PHP Fatal error: Uncaught InvalidArgumentException: Malformed UTF-8 characters, possibly incorrectly encoded in D:\phpstudy_pro\WWW\www.demo.com\vendor\topthink\framework\src\think\response\Json.php:50 Stack trace: #0 D:\phpstudy_pro\WWW\www.demo.com\vendor\topthink\framework\src\think\Response.php(385): think\response\Json->output(false) #1 D:\phpstudy_pro\WWW\www.demo.com\vendor\topthink\framework\src\think\Response.php(131): think\Response->getContent() #2 D:\phpstudy_pro\WWW\www.demo.com\vendor\topthink\framework\src\think\initializer\Error.php(58): think\Response->send() #3 D:\phpstudy_pro\WWW\www.demo.com\vendor\topthink\framework\src\think\initializer\Error.php(91): think\initializer\Error->appException(Object(think\exception\ErrorException)) #4 [internal function]: think\initializer\Error->appShutdown() #5 {main} thrown in D:\phpstudy_pro\WWW\www.demo.com\vendor\topthink\framework\src\think\response\Json.php on line 50
虽然换了版本但是具体原因还是没找到哪个数据除了问题

浙公网安备 33010602011771号