php - 为什么 UTF-8 在我的一个 PHP 文件中有效,而在另一个文件中无效?

标签 php html utf-8 character-encoding

我使用 <meta http-equiv="content-type" content="text/html; charset=utf-8" />在我的 PHP 文件中启用像 ąčęė... 这样的字符.

在我的 index.php 文件中,由 HTML 或 PHP 生成的文本看起来不错,但在另一个文件 (miestai.php) 中,由 PHP 编写的文本看起来不错,但由 HTML 编写的文本却乱七八糟(而不是 ± 我得到 � ).

当我删除 <meta http-equiv="content-type" content="text/html; charset=utf-8" /> 时从该文件来看,用 HTML 编写的文本看起来不错,但用 PHP 编写的文本却乱七八糟。

我该如何解决这个问题?

注意:两个文件都在同一个文件夹中。我什至将 index.php 中的所有内容粘贴到 miestai.php,但我仍然遇到同样的问题。

最佳答案

几乎总是意味着某些内容未以 UTF-8 编码,但被解释为 UTF-8。您需要一直使用 UTF-8,而不仅仅是在 header 中。以 UTF-8 格式保存文件,将数据库设置为使用 UTF-8 等等。

如果您的 PHP 文件中确实有这些字符串,那么这些文件不会以 UTF-8 格式保存。如:

<?php
header("Content-Type: text/html; charset=utf-8");
echo "äöäöää"; //if this shows up as ������ this file was not saved in UTF-8

关于php - 为什么 UTF-8 在我的一个 PHP 文件中有效,而在另一个文件中无效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12114233/

相关文章:

php - 如何在 PHP 5.3 中将 JSON 保存为未转义的 UTF-8?

php - 如何使用异常处理或错误处理停止页面以显示特定警告(请参阅详细信息)?

php - 如何直接在 php 文件中包含 CSS 代码

html - CSS 页脚格式

c# - 如何正确地将 iso-8859-1 转换为 utf8?

Java - Google App Engine - UTF-8 编码问题

php - mysql连接查询有很多字段

php - 使用 INSERT DATEDIFF 接收语法错误

javascript - document.writeln 未正确连接 === 比较

html - 网站链接行为异常