为什么使用文件语言时编码不起作用



我在我的网站上有一个名为tr.lang的语言文件我在那里保存语言变量值。我在我的HTML标题中使用此内容来显示土耳其字符:

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

和TR样本:

<?php
define("RANK","Sıra");
define("NAME","İsim");
define("TRAFFIC","Hit");
define("POINTS","Puan");
define("COMMENTS","Mesajlar");
define("COMMENT","Mesaj");
define("BONUS","Üye Bonusu");
?>

没有数据库参与其中,所以我的问题是如何正确显示此字符。

注意:当我删除文件并恰好正确的值(没有变量)时,它可以工作,但是当我将其编写为文件并在我的index.php开头调用时,它会显示出类似的字符?�那是什么原因?

文件调用:

include_once("{$server_root}include-lng/tr.lang");

您有几个问题:

  1. latin-1 是指编码的速记方式,其实际名称是iso-8859-1
  2. 拉丁语1不支持土耳其人所需的所有字符
  3. 在评论中,您说"编码为utf8",因此您告诉浏览器尝试使用未使用的编码来解码文本。

解决方案:

  1. 使用UTF-8(确保您的编辑器设置为保存在该编码中)
  2. 告诉浏览器您使用的是UTF-8,而不是拉丁-1

最新更新