我的数据库中有一些信息。随后,我echo json_encode($array);
包含信息的数组,然后通过AJAX / jQuery将其返回到显示内容的页面。
例如;
“戴夫的苹果很酸”。
我的网页将其显示为:
“戴夫的苹果很酸”。
这显然是字符编码问题。在我的托管公司被另一家公司收购之前,我们从未遇到过问题。
显示内容的页面标题包含:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
此后,我们尝试了以下操作:
mysqli_set_charset($conn, "utf8");
<-无法解决问题echo json_encode( $array, JSON_UNESCAPED_UNICODE );
<-无法解决问题在包含“戴夫的苹果很酸”的特定变量上的echo mb_detect_encoding();
回显:“ UTF-8”。
在检查显示信息的页面的控制台时,发现内容到达了“混乱的”脚本,FireBug从字面上显示了响应:戴夫的苹果很酸。
其中包含数据的列具有以下结构:
ID,名称,类型,归类
6,博客文章,文本,utf8_general_ci
有人有一些新见解吗?我一直在StackOverflow上搜索数小时,没有结果。
答案 0 :(得分:-1)
用于编码:
json_encode($ data,JSON_UNESCAPED_UNICODE)
并进行解码:
json_decode($ json,false,512,JSON_UNESCAPED_UNICODE);