• 技术文章 >PHP >PHP教程

    php ajax获取中文乱码的解决办法

    小妮浅浅小妮浅浅2021-09-15 16:29:16原创138

    1、执行“iconv('utf-8','gb2312',$_POST['Data']);)”代码。

    2、通过PHP从数据库读出中文字符并转成json格式即可。

    function arrayRecursive(&$array, $function, $apply_to_keys_also = false)
     {
         static $recursive_counter = 0;
         if (++$recursive_counter > 1000) {
             die('possible deep recursion attack');
         }
         foreach ($array as $key => $value) {
             if (is_array($value)) {
                 arrayRecursive($array[$key], $function, $apply_to_keys_also);
             } else {
                 $array[$key] = $function($value);
             }
             if ($apply_to_keys_also && is_string($key)) {
                 $new_key = $function($key);
                 if ($new_key != $key) {
                     $array[$new_key] = $array[$key];
                     unset($array[$key]);
                 }
             }
         }
         $recursive_counter--;
     }
     function JSON($array) {
         arrayRecursive($array, 'urlencode', true);
         $json = json_encode($array);
         return urldecode($json);
     }
    $json_string=JSON($data);
    //$obj = json_decode($json_string);
    print_r($json_string);

    经过这些处理后你会发现后台PHP从数据库读出来的中文字符成功的转成了json格式并且中文显示一切正常!

    当然此时前台接收到的数据就是JSON格式的了并且中文字符也是正常!

    好了~~就是这些思路~网上方法有很多!看得有点乱~主要是记住思路!

    然后就看用什么函数用什么方法解决相关编码问题就可以了!

    比较烦那种JS前台AJAX需要转码!后台再解码!有的还需要转两次!

    目前我写的这些都是在PHP后台语言代码的情况下有效的.

    前台即使是GBK也不用作任何转码操作,全部只在后台PHP代码里面作相关转换就可以了!!

    以上就是php ajax获取中文乱码的解决办法,希望对大家有所帮助。更多php学习指路:php教程

    本文转载于php中文网,如有侵犯联系作者修改。

    专题推荐:php ajax
    品易云
    上一篇:php替换链接为空的方法 下一篇:php小数精确小数点后位数的方法

    相关文章推荐

    • php数组获取值的方法• php删除数组后2项元素的方法• php中intval()的使用• php隐藏中间字符的方法• php将字符串转换bool类型的方法• php返回错误代码的方法• php http文件上传的实现方法• php头编码的设置方法• php实现数字转换为大写的方法• PHP中销毁对象的方法• php获得表单提交数据的三种方法• php设置cookie记住密码的方法• PHP函数__autoload失效原因• php实现sftp上传的方法• php替换链接为空的方法

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网