thinkPHP 3.2 URL 路由传入汉字 添加至utf8数据库错误解决方法

浏览:733 发布日期:2015/10/21 分类:求助交流 关键字: 路由有汉字 utf8数据库出错
假设:http://location/...../text/Ilove中国 (即:$_GET ['text']="Ilove中国")
假设传入$_GET ['text']= 好像dump出来除了英文正常 汉字就是乱码,页面报错如下

Mysql无法插入 /x64/x58 .............
研究了一晚上,得到解决方法:
解决方法如下:
echo $_GET['text']."1<br />";//No.1 乱码!如果此时去urlencode($_GET ['text']);你会发现是url编码出来的居然是GBK格式 坑爹的
$data["text"]=mb_convert_encoding($_GET['text'], 'UTF-8', "gbk");//变回汉字
echo $data["text"]."2<br />";//No.2 变回汉字了!
$data["text"]=urlencode($data["text"]);//重新进行url编码
echo $data["text"]."2<br />";//No.3 重新进行url编码,成功!

附件 tp.jpg ( 12.61 KB 下载:3 次 )

最佳答案
评论( 相关
后面还有条评论,点击查看>>