【问题标题】:HTML elements in utf8 in a php file?php文件中utf8中的HTML元素?
【发布时间】:2013-02-20 11:06:00
【问题描述】:

标签: php html utf-8


【解决方案1】:

可能是因为您在输出内容后设置了标题。您需要在脚本有任何输出之前调用header,并且您还应该在发送标头之前开始会话。文件的开头应该是这样的......

<?php 
session_start();
header('Content-type: text/html; charset=utf-8');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

...

【讨论】:

  • Crikey,说实话!怎么办?
  • 可悲的是我对PHP的了解很少。我是否应该更改您在上面粘贴的代码中的其他内容,或者我可以用它替换我的代码的第一部分并且它应该可以工作?提前致谢!
  • 您应该从您的代码中获取headersession_start,并将其放在文档的顶部,就像我在这里展示的那样。然后,您还应该检查此页面上建议的其他内容...确保您的标题正确,并显示在浏览器上,并确保您的源文件本身以 utf-8 编码保存。
【解决方案2】:

检查文件是否保存为 UTF-8。有时文件是 ANSI 编码的,因此即使您正确设置了标题,也不会显示 UTF 字符。

所以检查两件事:

  1. &lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8"&gt;
  2. 您的 PHP 文件编码。

注意:如果文件未使用 UTF-8 编码,并且您更改了它,请记住再次检查特殊字符,因为当您使用新格式保存文件时它们可能会更改。

【讨论】:

  • @Erlend Anderson - 文件编码由您的编辑器完成,请查看那里的正确设置。这个W3C checker 可以让您更深入地了解您的问题。
【解决方案3】:

检查字段在数据库中的编码方式。可能问题就在那里。

【讨论】:

    【解决方案4】:

    您应该确保 HTTP 服务器标头正确。

    特别是标题:

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

    应该在场。

    如果存在 HTTP 标头,浏览器会忽略元标记。 或者使用 HTML 实体作为特殊字符这里是html special character code.的链接

    【讨论】:

      猜你喜欢
      • 2015-10-14
      • 2023-04-07
      • 1970-01-01
      • 1970-01-01
      • 2011-04-17
      • 2015-04-28
      • 1970-01-01
      • 2014-04-01
      • 2015-08-30
      相关资源
      最近更新 更多