2010-01-23 62 views
1

我读过一些文章,因为它支持字符集,因此在php中推广使用新的ext/mysqli。我目前使用ext/mysql并使用SET NAMES UTF-8来确保我所有的数据都存储为utf-8。是不是在ext/mysql中的字符集支持或我缺少更大的东西?ext/mysql字符集支持vs ext/mysqli字符集

谢谢:)

回答

1

SET NAMES UTF-8并没有意味着数据存储在UTF-8。这意味着数据以UTF-8从客户端获得,并以UTF-8以客户端为单位服务。

当你创建一个数据库/表/行

CREATE TABLE{ 
    ... 
}CHARSET=utf8; 

CREATE DATABASE DEFAULT CHARACTER SET utf8 

这里阅读

存储编码设置,例如:Mysql: latin1-> utf8. Convert characters to their multibyte equivalents


2里昂 mysql会很好。

请再次检查表和行的编码,例如phpMyAdmin。请记住,将编码设置为数据库不会自动更改表格的编码。如果没有指定表编码,它仅用于默认值

+0

谢谢丹。我现在更了解它。我实际上已经配置mysql来使用DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci; 回到我真正的问题,是不是应该使用mysqli,如果我想要完整的unicode支持?或者,MySQL可以做到这一点呢?谢谢:) – Lyon 2010-01-24 04:51:05

+0

我已经用phpmyadmin也检查过它。欣赏Dan的头像:)谢谢! – Lyon 2010-01-24 15:03:09