使用PHP从MySQL数据库中获取特殊字符

Jas*_*ood 6 php mysql utf-8 character-encoding

我有一张包含特殊字符的表格,例如™.

可以使用phpMyAdmin和其他软件输入和查看此字符,但是当我在PHP中使用SELECT语句输出到浏览器时,我会在其中获得带有问号的菱形.

表类型是MyISAM.编码是UTF-8 Unicode.整理是utf8_unicode_ci.

html头的第一行是

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
Run Code Online (Sandbox Code Playgroud)

我在输出之前尝试在字符串上使用htmlentities()函数.没运气.

我也试过在任何输出之前将它添加到php(没有区别):

header('Content-type: text/html; charset=utf-8');
Run Code Online (Sandbox Code Playgroud)

最后我尝试在初始mysql连接下面添加这个(这导致显示其他奇数字符):

$db_charset = mysql_set_charset('utf8',$db);
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

Tia*_*ong 6

下面的代码适合我.

$sql = "SELECT * FROM chartest";
mysql_set_charset("UTF8");
$rs = mysql_query($sql);
header('Content-type: text/html; charset=utf-8');
while ($row = mysql_fetch_array($rs)) {
    echo $row['name'];
}
Run Code Online (Sandbox Code Playgroud)