1

如何将郁金香符号() 插入表格列。

我正在使用 PHP 5.3.x 并使用 PDO 进行数据库操作,我尝试设置各种字符集,如 utf8、utf8mb4 但没有用。当我使用 utf8 时,它说“字符串值不正确...”,而使用 utf8mb4 时,郁金香符号被替换为“?”。

我尝试了所有这些选项PHP PDO:字符集,设置名称?

$sql = new PDO(MySQL::DRIVER . ":host=host;dbname=db;charset=utf8",
                            MYSQL_USER,
                            MYSQL_PASSWORD,
                            array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8")); // or utf8mb44
$sql->exec("set names utf8"); // or utf8mb44
$sql->exec("SET CHARACTER SET utf8"); // or utf8mb44
4

1 回答 1

0

您向其发送字符的 PHP 文件需要编码为 UTF-8,当然数据库表也需要utf8mb4像 Adder 指出的那样。

此外,您的数据库连接需要明确设置为utf8mb4- 为什么不直接在连接到数据库时这样做呢?

$sql = new PDO(MySQL::DRIVER . ":host=host;dbname=db;charset=utf8mb4", ...

本质上,在UTF-8 中给出的建议一直适用 - 只需在 mySQL 方面替换utf8为。utf8mb4

于 2013-05-16T15:06:27.510 回答