如何使用PHP显示mysql数据库中的非英文字符?

时间:2011-05-28 07:36:55

标签: php mysql character-encoding

我创建了一个网页,要求以非英文字符存储信息。我使用PHPMyAdmin和charset utf8创建了数据库和表,并整理了utf8_general_ci,我在该表中输入了一些示例数据,在PHPMyAdmin浏览区域中我可以看到非英文字符,但是当我使用php查询这些表数据时,它显示为问号(?????那样)

3 个答案:

答案 0 :(得分:2)

尝试在标题中添加:

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />

有关在不同内容类型上执行此操作的不同方法,请参阅this page

答案 1 :(得分:0)

如何确定查询结果未正确形成utf8?如果您在网站上显示它,请记住在您的头部中有一个正确形成的元构造,如下所示:

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />

或者,另一种在php中格式化它的方法......

<?
...somecode...
header ('Content-type: text/html; charset=utf-8');
...morecode...

否则您的浏览器可能会尝试使用不同的字符编码来显示它。

总而言之,PHP处理utf8字符非常好。有些事情需要考虑,here's a good summary about this

答案 2 :(得分:0)

如果你的数据库的其余部分不是UTF8而且这个表是UTF8,你可以改变HTML头部的字符集,或者使用utf8_decode()来解码utf8字符串。

http://us.php.net/manual/en/function.utf8-decode.php