php - 尝试打印一些特殊字符

时间:2013-11-30 12:29:47

标签: php echo

我一直在尝试在我的php页面上打印一些字符并返回其他内容,例如损坏的字符

喜欢

  

“joão”,ø,ç等

echo '<br>não<br>'

回报是

não

代替:

não

这是econding utf-8的问题吗?

我试过这段代码

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

但没有结果

5 个答案:

答案 0 :(得分:1)

您的Content-Type标头中有拼写错误。它是...; charset=...,带有分号

答案 1 :(得分:1)

  

注意:您的标题header('Content-type: text/html, charset=utf-8');,   是正确的header('Content-type: text/html; charset=utf-8');

您的文档( php-file )应保存在 utf8(无bom)中,或使用iso-8859-1代替utf8


要在utf8中保存文档而不使用繁荣使用notepade ++(选择“转换为utf-8无BOM”): enter image description here

或使用:

header('Content-Type: text/html; charset=iso-8859-1');

提示(如果您使用的是数据库):

如果您的数据库是UTF-8,那么:

  • php文件转换为utf-8而不是bom
  • 将标题设置为utf8 header('Content-type: text/html; charset=utf-8');

如果你的数据库是latin1,那么:

  • php文件转换为ANSI
  • 将标头设置为iso-8859-1 header('Content-type: text/html; charset=iso-8859-1');

答案 2 :(得分:0)

检查您的PHP源文件是否以UTF-8编码。

答案 3 :(得分:0)

试试这个

header('Content-Type: text/html; charset=iso-8859-1');

答案 4 :(得分:-2)

你的php文件本身的编码可能是错误的。您可能希望将其更改为utf-8。

但是,在代码中直接包含特殊字符并不是一种好习惯。相反,使用HTML charcode等效项来生成有效的输出。

示例

echo 'n&atilde;o';

可以找到完整的HTML字符代码列表here