gpt4 book ai didi

php - iPhone表情插入MySQL却变成空值

转载 作者:IT王子 更新时间:2023-10-28 23:46:40 26 4
gpt4 key购买 nike

我们正在开发一个 iPhone 应用程序,它将表情符号从 iPhone 发送到服务器端 PHP 并插入到 MySQL 表中。我正在做服务器端的工作。

但是insert语句执行成功后,插入的值变成了空白。
我可以正确插入字段(varchar)的是文本,但一旦包含表情符号,
只需插入文字,表情就会自动剪切。

有人建议我将字段类型设置为博客,以便它可以存储图像数据。
但是插入的值并不总是包含表情大小写,而且尺寸很小。

*我正在使用 mysql_real_escape_string 插入值。

最佳答案

大多数 iOS 表情符号使用 Unicode 表的基本多语言平面之上的代码点。例如,😄(张开嘴巴和微笑的眼睛的笑脸)在 U+1F604。

OS X character viewer

现在,请参阅 http://dev.mysql.com/doc/refman/5.5/en/charset-unicode.html .

MySQL 5.5 之前的版本只支持 BMP 的 UTF-8,其中包括 U+0000 和 U+FFFF 之间的字符(即只是实际 UTF-8 的子集;MySQL 的 utf8 不是真实的UTF-8)。它不能将字符存储在代码点 U+1F604 或其他类似的“高位字符”。 MySQL 5.5+ 支持 utf8mb4(实际 UTF-8)、utf16utf32,它们能够对这些字符进行编码。如果您使用的是 MySQL 5.5+,请使用这些列字符集之一,并确保您对与 PHP 的连接编码使用相同的字符集。如果您使用的是 MySQL < 5.5,则必须使用 BLOB 列类型。该类型存储原始字节而不关心其中的“字符”。缺点是您将无法有效地搜索或索引文本。

关于php - iPhone表情插入MySQL却变成空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9509668/

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