PHP:$_GET中的奇怪字符串编码
发布时间:2020-12-13 16:59:02 所属栏目:PHP教程 来源:网络整理
导读:我有一个客户端发送到服务器的以下字符串: 3%D3%E1f%7C%AF%B0a%B58%81%92%F9M%90%0CD%A0Y%9C // string in the actual URL3óáf|ˉ°aμ8’ùMD Y? // var_dump($_GET) 原始字符串应为: 33D3E1667CAFB061B5388192F94D900C44A0599C 我的问题是我无法弄清楚
我有一个客户端发送到服务器的以下字符串:
3%D3%E1f%7C%AF%B0a%B58%81%92%F9M%90%0CD%A0Y%9C // string in the actual URL 3óáf|ˉ°aμ8’ùMD Y? // var_dump($_GET) 原始字符串应为: 33D3E1667CAFB061B5388192F94D900C44A0599C 我的问题是我无法弄清楚如何对此进行编码/解码,因此我可以执行数据库搜索,因为排序规则类型不匹配.我试过urlencode / urldecode,mb_string_convert,utf8_encode,iconv,但没有运气.有任何想法吗 ? 尝试使用字符串进行搜索时,Laravel会抛出以下异常: 'SQLSTATE[HY000]: General error: 1267 Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE)... 我无法控制客户端的编码.奇怪的值是使用Laravel的Log :: imfo()将其记录到日志文件中 解决方法
您是否尝试过发送请求而不是获取请求,并将该字符串作为实际字符串发送.
或者可能将您的数据库编码更改为UTF-8(它处理瑞典语就好了,不需要选择拉丁语 – 瑞典语版本). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |