`
月影无痕
  • 浏览: 1008577 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

php json_encode不支持gbk gb2312编码的处理方法

 
阅读更多

php json_encode只支持utf-8编码,自定义一个函数即可解决之:

 

public function my_json_encode(array $data) {
        $s= array();
        foreach($data as $k => $v) {
            if(is_array($v)) {
                $v = my_json_encode($v);
                $s[] = "\"$k\":$v";
            }else{
                $v = addslashes( str_replace( array("\n","\r"), '', $v));
                $s[] = "\"$k\": \"$v\"";
            }
        }
        return '{'.implode(', ', $s).'}';
    }

0
5
分享到:
评论

相关推荐

    php中json_encode处理gbk与gb2312中文乱码问题的解决方法

    这是因为`json_encode`默认只支持UTF-8编码,不兼容GBK和GB2312等其他编码方式。 当尝试用`json_encode`处理GBK或GB2312编码的中文字符串时,通常会出现以下两种情况: 1. **返回`null`**:如果`json_encode`遇到...

    php使用json_encode对变量json编码

    在PHP中,如果字符串包含其他编码(如GBK),可能导致`json_encode()`输出null或乱码。为了解决这个问题,可以先将字符串转为UTF-8编码,或者在`json_encode()`时设置`JSON_FORCE_OBJECT`标志,使得非UTF-8字符串也...

    PHP学习散记_编码(json_encode 中文不显示)

    如果数据是其他编码,如GBK,那么在编码之前需要先进行转换,否则可能导致乱码或者`json_encode`失败。 在PHP中,处理JSON编码和解码时,有一些常见的问题和解决方法: 1. **BOM问题**:有些编辑器会在文件开头...

    php中json_encode UTF-8中文乱码的更好解决方法

    在PHP中,`json_encode`函数用于将数组或对象编码为JSON格式的字符串,这是在Web开发中用于数据传输非常常见的操作。然而,中文字符在使用`json_encode`时可能会出现乱码的问题,特别是当网页编码(通常是UTF-8)和...

    Json_encode防止汉字转义成unicode的方法

    有时候,我们需要获得汉字形式的json字符串,比如需要获得gbk编码的json字符串(只要把汉字形式的字符串转码就可以得到了)。有什么好办法么? php官方听到了这个需求,并提供了一种可靠的解决方案:JSON_UNESCAPED_...

    PHP gbk环境下json_dencode传送来的汉字

    更推荐的方法是在PHP端将GBK编码的汉字转换为UTF-8编码,再进行`json_encode`操作。可以使用`iconv`或`mb_convert_encoding`函数完成这个转换: ```php function GbkToUtf8($data) { if (is_array($data)) { ...

    有关json_decode乱码及NULL的问题

    写接口的同学应该会经常遇到数据格式的转换,这时候必不可少的两个函数就是json_encode()和json_decode()。 这两个函数使用的时候有很多的主要事项,在这里我来说一下json_decode()。 json_decode(): 对JSON 格式的...

    PHP编码转换函数utf-gb-big5

    在PHP编程语言中,处理不同字符编码的转换是常见的需求,特别是当涉及到中文字符时,如GBK(GB2312)、Big5和UTF-8等。这些编码标准在中国大陆和台湾地区尤为常见。本篇文章将详细介绍如何在PHP中进行各种编码间的...

    php json中文编码为null的解决办法

    原因分析:使用json_encode函数应应使用utf-8编码,我的页面用的是gbk. 解决:在json_encode函数前使用iconv(‘gbk’,’utf8′)函数。函数 function gbk2utf8($data) { if(is_array($data)) { return array_map...

    GBK的页面输出JSON格式的php函数

    但是json_encode()默认处理的是UTF-8编码的数据,如果原始数据是GBK编码,那么就需要先将数据从GBK转换成UTF-8编码。这就是tb_json_encode()函数的用途所在。 在tb_json_encode()函数中,首先调用了一个自定义的...

    PHP自定义递归函数实现数组转JSON功能【支持GBK编码】

    主要介绍了PHP自定义递归函数实现数组转JSON功能,针对json_encode函数处理GBK编码中文出现乱码的情况,使用自定义函数进行数组递归遍历实现可兼容GBK编码的数组转json功能,需要的朋友可以参考下

    php自动识别文件编码并转换为UTF-8的方法

    乱码问题往往由于编码不匹配引起,而PHP提供了多种方法来识别和转换编码,以确保数据的正确显示。本文将详细介绍一种自动识别文件编码并将其转换为UTF-8的方法。 首先,我们要引入PHP的`mb_string`扩展,它提供了多...

    PHP实例开发源码—PHP Unicode编码转换程序.zip

    例如,如果你有一个UTF-8编码的字符串,想要转换为GBK编码,你可以这样写: ```php $text = "你好,世界!"; $converted_text = mb_convert_encoding($text, "GBK", "UTF-8"); ``` `iconv()`函数与此类似,也用于...

    PHP JSON格式的中文显示问题解决方法

    如果不想每次输出JSON数据时都手动进行编码转换,可以将json_encode和json_decode方法封装到一个类中,通过封装类统一处理编码问题。 例如,可以创建一个Json_Helper类,其中包含一个encode静态方法用于封装json_...

    php编码转换,不需要iconv,mb_convert_encoding

    编码是将字符集中的字符映射为数字或二进制表示的过程,常见的字符集有ASCII、ISO-8859-1、GB2312、GBK以及UTF-8等。在PHP中,处理字符串时,必须确保字符串的编码与预期一致,否则可能会出现乱码问题。 尽管`iconv...

Global site tag (gtag.js) - Google Analytics