PHP连接mssql 2005 输出json并处理中文乱码方法

来源:互联网 发布:中银淘宝校园卡欠费 编辑:程序博客网 时间:2024/05/16 15:01
不知为何PHP6.0 用不了json_encode($arr,JSON_UNESCAPED_UNICODE);后面的参数不让带


还是用网上介绍的iconv("gbk","utf-8",$val),转化,但进行了改写这句: $arrRs[$key] = urlencode(iconv('GBK','UTF-8',$value));

function gbktoutf8($arr){        if(is_array($arr) && count($arr)){            foreach($arr as $key=>$value){                if(is_array($value)){                    $arrRs[$key] = gbktoutf8($value);                }else{                    if(!is_utf8($value)){                        $arrRs[$key] = urlencode(iconv('GBK','UTF-8',$value));                    }else{                        $arrRs[$key] = $value;                    }                }            }            return $arrRs;        }        return null;  }function is_utf8($string)   {       return (utf8_encode(utf8_decode($string)) == $string);   } 


输出时采用:


echo urldecode(json_encode($arr));

头部别忘了:

header("Content-Type:text/html;charset=utf-8"); 

成功输出中文。


原创粉丝点击