php ajax出现中文的解决办法
来源:互联网 发布:bf109战斗机数据 编辑:程序博客网 时间:2024/05/18 18:53
在使用ajax在前端向后台请求数据时,如果数据出现中文,那么在返回数据时会出现错误。json_encode只能接受utf8的数据,当json_encode碰到中文的时候会自动将中文从utf8转换成unicode类型。解决办法有一下几个:
1.JSON_UNESCAPED_UNICODE选项, 故名思议, 就是说, Json不要编码Unicode.
<?phpecho json_encode("中文", JSON_UNESCAPED_UNICODE);//"中文"
2.把汉字先urlencode然后再使用json_encode,json_encode之后再次使用urldecode来解码,这样编码出来的json数组中的汉字就不会出现unicode编码了。
$array = array('test'=>urlencode("我是测试"));$array = json_encode($array);echo urldecode($array);//{"test":"我是测试"}
3.在客户端进行unicode解码
php 端
$channelNames = array ();
foreach ( $tempNames as $item ) {
$channelNames [] = $item ['name'];
}
echo json_encode ( $channelNames, JSON_UNESCAPED_UNICODE );
js 端
success: function(result){
//console.log(decodeURI(result));
//json_encode时中文会进行转义,所以必须使用decodeURI进行转换回来
//decodeURI(result)是一个字符串
//channelNames=decodeURI(result).split(',');
},
参考资料:
http://blog.csdn.net/lanqiao825/article/details/26700809
- php ajax出现中文的解决办法
- ajax+php的responseText出现中文乱码
- ajax+php中文乱码解决办法
- ajax+php中文乱码解决办法
- ajax+php中文乱码解决办法
- ajax+php中文乱码解决办法
- PHP函数substr截取中文字符出现乱码的解决办法
- PHP函数substr截取中文字符出现乱码的解决办法
- php转json格式出现中文的解决办法
- PHP中文乱码出现的原因及解决办法分析
- PHP截取中文字符串出现乱码的解决办法
- php接收ajax中文,后台乱码解决办法
- Ajax中文乱码的解决办法
- PHP中文乱码的解决办法
- SpringMVC ajax中文乱码的解决办法
- ajax+php $.post()中文乱码解决办法(utf-8 ---> gb2312)
- 解决AJAX中文出现乱码的方法
- LoadRunner中文出现乱码的解决办法
- Inherits、CodeFile、CodeBehind的区别
- Dancing links 基础题
- 记录遇到的ios下的坑和bugs
- JqueryEasyUI datagrid通过struts请求从后台读取数据
- HTTP请求(GET与POST区别)和响应
- php ajax出现中文的解决办法
- 优化SQL查询:如何写出高性能SQL语句
- scala学习笔记:函数与方法
- Android WebView
- 银行账户密码 在对银行账户等重要权限设置密码的时候......
- iOS8 UIAlertController 创建UIAlertView以及UIActionSheet
- ASP.NET管线与应用程序生命周期
- hibernate的get和load区别
- 用Python实现一个简单的WebSocket服务器