首頁 > 後端開發 > php教程 > php mysql UTF-8编码问题

php mysql UTF-8编码问题

WBOY
發布: 2016-06-23 13:58:35
原創
979 人瀏覽過

有这样一段UTF-8编码 "\xe6\x93\x8d\xe4\xbd\x9c”
在页面里面直接赋值输出时正确的
$subject="\xe6\x93\x8d\xe4\xbd\x9c";
$subject=mb_convert_encoding($subject, "GB2312", "UTF-8");
echo $subject;
?>
但是把条记录放在数据库中,读出转换后 没有改变,输入还是“\xe6\x93\x8d\xe4\xbd\x9c”;
哪位大神遇到过类似问题,请指教,谢谢


回复讨论(解决方案)

看不懂想表达什么

你看下你数据库的编码是什么 估计不是GB2312的

程序中的 "\xe6\x93\x8d\xe4\xbd\x9c"
utf-8编码的 操作 的十六进制内码的一种表示形式(一定是要被双引号括起的)
否则只是 \xe6\x93\x8d\xe4\xbd\x9c 这样的串

只有在程序里书写的才会被转换,外来的都不会
对于字符串 \xe6\x93\x8d\xe4\xbd\x9c 可以这样转换

$s = '\xe6\x93\x8d\xe4\xbd\x9c';echo hex2bin(str_replace('\x', '', $s));echo urldecode(str_replace('\x', '%', $s));
登入後複製
登入後複製

程序中的 "\xe6\x93\x8d\xe4\xbd\x9c"
utf-8编码的 操作 的十六进制内码的一种表示形式(一定是要被双引号括起的)
否则只是 \xe6\x93\x8d\xe4\xbd\x9c 这样的串

只有在程序里书写的才会被转换,外来的都不会
对于字符串 \xe6\x93\x8d\xe4\xbd\x9c 可以这样转换

$s = '\xe6\x93\x8d\xe4\xbd\x9c';echo hex2bin(str_replace('\x', '', $s));echo urldecode(str_replace('\x', '%', $s));
登入後複製
登入後複製

 
正如版主所说,这样是对的,谢谢大家
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板