当前位置: 首页 > 知识库问答 >
问题:

php - 关于汉字数据转json的时候什么时候需要转unicode什么时候不需要?

惠文彬
2023-04-21

如题, 在将包含汉字的数据转json存的时候,什么时候需要转unicode存储,什么时候不需要
如下:
{"subject":"\u6395\u7268\u51ef\u86c1"}
{"subject":"吃饭了没"}

共有2个答案

彭炳
2023-04-21

就项目中的情况分享一下

  1. 目标不支持 UTF-8 或其他可以直接处理中文字符的编码方式,并且需要保证字符串在网络传输过程中不失真(即不能被截断、改变格式等),将字符转换为 Unicode 编码后再进行存储和传输。
  2. 如果在网站 对接中, 数据没有进行 Unicode 编码,手动将汉字进行处理(例如,使用 encodeURIComponent() 函数),以确保能正确地显示和处理汉字。
  3. 不仅仅是汉字还包括汉字的标点符号字符
祁增
2023-04-21

目前来说基本没有任何情况需要。

很多编程语言里 JSON 序列化时默认会转义 Unicode 字符的目的,是为了让构成 JSON 的字符全部都可以用 ASCII 编码范围的内字符来表示。而无论何种字符编码,都一定是兼容 ASCII 的。

所以只有当你需要在两种彼此不兼容的字符编码系统中传输 JSON 时,才需要这么做,以避免乱码问题。而这基本是“上古”时代了,目前来说你的项目全都应该基于 UTF-8 才对,不转义反倒有利于节省传输时的开销。

 类似资料:
  • 问题内容: 我对JAX-WS进行了概述,并注意到了(和)的一些引用。 在什么情况下需要?(我认为JSR 109服务器?!) 问题答案: 是使用SUN的参考实现将Web服务作为标准存档部署在非Java EE5 Servlet容器上时所需的专有部署描述符。 Sun的RI 用作servlet上下文事件的侦听器和调度程序servlet。两者都必须在中声明。然后需要该文件为定义Web服务端点,以使其知道必须

  • 问题内容: 我使用类只有很短的时间,编写方法时,我使所有变量都引用了self,例如self.foo。 但是,我在浏览《 wxPython in Action》 一书时发现,“ self”并没有一直使用。例如: 下面的一个确实使用“自我”。 如果我没记错的话,“自我”是指该类的特定实例,那么什么时候没有必要?有一般的经验法则吗? 问题答案: 您用于引用当前实例的属性。 您用于引用父类的方法。 如果仅

  • 谷歌正在通过电子邮件通知Android位置权限的更改: 我们将于2016年10月15日进行更改,这将影响针对API版本21(Android 5.0、Lollipop)或更高版本的应用程序,这些应用程序使用ACCESS_FINE_LOCATION但没有明确具有“android.hardware.location.gps”用途功能。展望未来,这些应用程序将可安装在没有GPS硬件的设备上。在大多数情况下

  • 在回答“亚马逊DynamoDB吞吐量是如何计算和限制的?”有人建议,只要超出每秒预配的吞吐量,DynamoDB就会限制请求。然而,这与我的经验相矛盾。 我在一个表中发布了多行,通常行数远远超过了配置的写容量。这种情况会在短时间内发生。在某一点上,我甚至有5分钟的平均时间超过了规定的容量。OTOH,平均15分钟低于容量。在那段时间里,我没有收到任何限制性的请求。 15分钟的平均峰值远低于规定的容量:

  • 问题内容: 当我尝试按照本指南进行SQLAlchemy Relation Example时:基本关系模式 我有这个代码 它运作良好,但是在指南中,该模型应为: 为什么我不需要或在我的示例中?什么时候应该使用其中一个? 问题答案: 如果使用,则无需在第二个表上声明关系。 如果 不 使用,并分别定义,则如果不使用,则sqlalchemy将不知道如何连接关系,因此修改一个也将修改另一个。 因此,在您的示