//$record 是查询的结果,是一个数组
$record = json_encode($record);
echo $record;
后发现它会把中文或韩文进行编码为 \uxxx 这种格式。
此时 $record 知识一个 json 字符串,并非是一个对象。通过js获取该字符串之后
需要用 eval 转换为实体对象才能使用。
$json_msg = eval(obj.value);
结果他没有把中文/韩文正确转回,而是把 \uxxx (将中文/韩文)编码后的结果当作属性的值了。
被这个问题郁闷了半天 试了试这种方式
foreach($record as $key => $val) {
$record[$key] = urlencode($val);
}
在使用 json_encode 之前现将所有的元素值进行 url 编码之后
$record = json_encode($record);
进行json编码,在通过js 获取该字符串之后使用js的解码函数
var json_msg = decodeURIComponent(obj.value)
结果问题解决!
担心后期也会遇到这种问题 所以就先记下来!