UTF-8符号显示错误

时间:2014-07-07 09:40:39

标签: php mysql codeigniter encoding utf-8

我遇到UTF-8符号问题,例如☃ - 这在网站上显示为Ƒ〜。

数据库,表和列charset是UTF8和utf8_unicode_ci排序规则。

我有一个标题

Content-Type => text/html; charset=utf-8

和元标记

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

php.ini的默认编码为utf-8

我的my.cnf文件中有以下几行

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
default-character-set=utf8
default-collation=utf8_general_ci
character-set-server=utf8
collation-server=utf8_general_ci
init-connect='SET NAMES utf8'

[client]
default-character-set=utf8

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

所有文件都采用UTF-8编码。 当我在Mysql Cli中输出相同的数据时,一切都没问题,但当它显示在页面上时,符号就搞砸了。

我在这里没有选择,请帮忙:(

1 个答案:

答案 0 :(得分:0)

在root / index.php上写下这一行,看看它是否有效:

header('Content-Type: text/html; charset=UTF-8');

这会将标头设置为utf。它应该是任何空格或任何东西之前的第一行。