ホームページ  >  に質問  >  本文

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

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

\u6211\u662f\u4e2a\u4e2d\u6587

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

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

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

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

某草草某草草2712日前422

全員に返信(2)返信します

  • PHP中文网

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

    パフォーマンスは間違いなく影響を受けます。このような大きなテキストを通常保存する場合は、別のテーブルが作成されます。

    返事
    0
  • 巴扎黑

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

    はいJSON_UNESCAPED_UNICODE、中国語をエスケープせずに直接保存します。

    返事
    0
  • キャンセル返事