我遇到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中输出相同的数据时,一切都没问题,但当它显示在页面上时,符号就搞砸了。
我在这里没有选择,请帮忙:(
答案 0 :(得分:0)
在root / index.php上写下这一行,看看它是否有效:
header('Content-Type: text/html; charset=UTF-8');
这会将标头设置为utf。它应该是任何空格或任何东西之前的第一行。