gpt4 book ai didi

PHP - 如何序列化数据库中带有特殊字符的数据?

转载 作者:搜寻专家 更新时间:2023-10-30 20:54:08 24 4
gpt4 key购买 nike

我有一个带有特殊字符的字符串,比如:

$text = "NÃO";

当我使用 serialize($text) 时,返回

a:1:{i:0;s:4:"NÃO";}

但是当我使用从数据库中获取的字符串时,例如:

$query = SELECT special_text FROM ...
(...)
$text = $row->"special_text"
serialize($text);

返回

a:1:{i:0;s:3:"NÃO";}

,是什么让我的脚本崩溃了。

当我从数据库序列化数据时我必须做什么?谢谢,抱歉我的英语不好

最佳答案

如果你不想使用 utf-8,尝试在将序列化的字符串保存到 db 之前对其进行编码,并在检索它之后进行解码。您可以使用 base64 编码,就像您在数据库中使用任何 8 位编码一样。此方法将数据大小增加 4/3。或者您可以在您的数据库中使用二进制 (BLOB) 字段并使用 gzip 或类似的东西对您的数据进行编码。对于大量文本非常有用,但会增加 CPU 负载。

关于PHP - 如何序列化数据库中带有特殊字符的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30446576/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com