• jquery中Ajax提交配合PHP使用的注意事项-编码


      问题:Ajax提交的数据的编码为utf-8,并且返回的数据也要求是utf-8的,如果说你的系统不是utf-8编码的话,那会让你痛不欲生!

      解决方法:(比较笨拙的方法,但是很好用)

        对于接收的数据,使用mb_convert_encoding()方法进行转码:

          mb_convert_encoding($receiveData'GBK''UTF-8');

        对于返回的数据,同样使用mb_convert_encoding()方法进行转码:

          mb_convert_encoding($rebackData'UTF-8''GBK');

      关键:此处为什么不用iconv()方法进行转码,而用mb_convert_encoding()进行转码?

        这是因为iconv()方法存在缺陷,如果遇到一些特别字符时,如:"—",英文名中的"."等等字符,转换就断掉了。这些字符后的文字都没法继续转换了。

        个人建议碰到转码问题时采用mb_convert_encoding比较保险。

      补充:json_encode函数对中文支持很恶心,只能是UTF-8编码,那么大部分老系统使用其他编码(GBK,GB2312),json_encode去转换数组/对象成为JSON对象都会变成空!

  • 相关阅读:
    空类型指针实践
    参数作用域实践
    内联函数实践:有疑惑未解决
    可变参数实践
    默认参数实践
    函数指针实践
    Windows下开发环境搭建
    Test
    C++ 左值与右值
    如何打包成多个资源文件
  • 原文地址:https://www.cnblogs.com/wxdblog/p/7561968.html
Copyright © 2020-2023  润新知