我正在尝试使用php的PDO类添加希伯来语值到数据库。
在最终成功之后(通过使用:array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"
),我发现COLLATE HEBREW_CI_AS
被添加到我的值中。
有什么方法可以防止这种添加吗?
谢谢你,很抱歉我的英语不好。
PHP: The Right Way是一个很好的信息来源。
基本上检查您的pdo连接是否指定了DSN中的字符集:
new PDO(
'mysql:host=your-hostname;dbname=your-db;charset=utf8',
'your-username',
'your-password',
array(
# ... PDO Connection Options
)
);
确保您的数据库表被设置为使用utf8排序,通过phpmyadmin或使用mysql-命令行实用程序和以下查询:
ALTER TABLE table_name COLLATE utf8;
也可以考虑使用书中建议的utf8mb4