有些字符在我们的网页中变成“ ”

时间:2013-10-31 09:28:44

标签: php string encoding

我使用PHP访问数据库以获取类似这样的字符串

  

'Chloe'时装秀&晚餐

然后我做一个printf()来输出字符串为html,但是我的网页显示了这个:

  

Chloe 时装秀&晚餐

所有内容都是基于英语的,我错过了PHP中的内容吗?

我应该在哪里检查?

3 个答案:

答案 0 :(得分:6)

  1. 检查您的.php文件是否编码为没有BOM的UTF-8
  2. 检查您对数据库的连接是否为UTF-8
  3. 检查您是否在<meta charset="utf-8">标记
  4. 中的HTML标记中发送了<head>

    如果您与数据库的连接不是UTF-8并且您不想更改它(但我推荐它 - >所有UTF-8是防止字符垃圾的最安全的解决方案)请使用utf8_encode($databaseValue)确保您的值的编码是UTF-8。

答案 1 :(得分:1)

确保使用:

<meta charset="utf-8"> 

在页面的头部。

答案 2 :(得分:1)

您需要在html的“head”部分添加charset元标记。 请注意,元标记必须出现在呈现页面的前1024个字节内。

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