搜索

首页  >  问答  >  正文

php - json_encode之后,中文存到数据库变成了unicode,长度是怎么算的?

我发现 数组中的 中文经过json_encode之后,存到数据库变成了unicode。
例如:“我是个中文”,
变成了:

\u6211\u662f\u4e2a\u4e2d\u6587

本来“我是个中文”,共记10个字符。
变成了unicode之后,是不是就 共记30个字符???

text长度65535,如果能直接保存中文,大概能有3万多个中文。
如果变成了unicode,那能保存的中文岂不是只有6500个左右?

如果text长度不够用,改为 mediumtext,会不会使数据库变得又大又慢?

一共3个问题,麻烦请教一下。新手请见谅。

某草草某草草2782 天前469

全部回复(2)我来回复

  • PHP中文网

    PHP中文网2017-05-16 13:10:03

    性能一定会被影响。所有通常这种大文本的存储 都会单独创建一个表。

    回复
    0
  • 巴扎黑

    巴扎黑2017-05-16 13:10:03

    可以JSON_UNESCAPED_UNICODE,直接保存中文,不进行转义。

    回复
    0
  • 取消回复