成都网站建设设计

将想法与焦点和您一起共享

疑难答疑PHP服务端返回Json问题

我们需要在不断的经验积累中去完善我们的编程思路,灵活运用PHP语言来帮助我们实现需要的功能。用Extjs接收PHP服务端返回的Json结果时,发现只要是汉字(从SQLServer取得)都是空字符,对于这个PHP服务端返回Json问题,非常苦恼。#t#

成都创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:做网站、成都网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的广昌网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

后来看json_encode的文档才知道,它只能编码UTF-8的字符。这个问题就是返回的字符是GB2312,怎么变为UTF-8,并且最好是将整个数组进行UTF-8的转换。经过搜索有以下代码解决PHP服务端返回Json问题:

  1. function encodeUTF8($array) 
  2. foreach($array as $key=>$value) 
  3. if(!is_array($value)) 
  4. $array[$key]=mb_convert
    _encoding($value,"UTF-8","GBK"); 
  5. else 
  6. encodeUTF8($array[$key]); 
  7. return $array; 
  8. }

每次返回结果时:

 
 
 
  1. echo '{"total":"'.$rscount.'
    ","results":'.json_encode
    (encodeUTF8($result)).'}';

以上这段代码就是PHP服务端返回Json问题的具体解决方法。


当前题目:疑难答疑PHP服务端返回Json问题
本文URL:http://chengdu.cdxwcx.cn/article/dpscpie.html