Php文件上的编码不正确,但Html文件上没有

时间:2018-01-02 17:12:34

标签: php html character-encoding

我在Html文件中编写此代码

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15" />
  </head>
  <body>
    Try with special character (ì)
  </body>
</html>

当我显示我的html文件时,一切正常

Try with special character (ì)

但是当我在php文件中重命名我的html文件时,这就是结果

Try with special character (�)

有人可以帮我理解吗?

3 个答案:

答案 0 :(得分:0)

您可以尝试使用UTF-8:

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

答案 1 :(得分:0)

指定HTML文档的字符编码:

character_set指定HTML文档的字符编码。 共同价值观:

UTF-8 - Unicode的字符编码 ISO-8859-1 - 拉丁字母的字符编码 理论上,可以使用任何字符编码,但没有浏览器能够理解所有字符编码。使用的字符编码越广泛,浏览器理解它的可能性就越大。

要查看所有可用的字符编码,请查看IANA character sets

你只需要替换下面的html:

   <html>
      <head>
       <meta charset="UTF-8">
      </head>
      <body>
        Try with special character (ì)
      </body>
    </html>

答案 2 :(得分:0)

查看PHP函数mb_internal_encoding。它设置PHP将在内部使用的字符集。如果您在HTML的顶部添加:

<?php
  mb_internal_encoding("iso-8859-15");
?>

如果文件位于ISO-8859-15中,您的HTML应该会正常显示。会发生什么是PHP解释HTML寻找PHP块并基于默认的内部编码生成输出。结合mb_http_output(),您可以在一个编码中使用源文件,以不同的编码生成输出。