如何在UTF-8编码文件中保存俄语字符

时间:2013-02-17 22:58:47

标签: php utf-8 translate

好的,所以我有一个PHP文件,其中包含多种语言的几个文本字符串。对于大多数语言,如法语或西班牙语,我只需输入字符。

我遇到的问题是俄语字符。 PHP文件以UTF-8编码,如何确保俄语字符都正确保存并在输出网页上正确显示...是否只是将文本粘贴到PHP文件中,或者是有一种方法可以保证字符正确保存到文件中 - 例如可能将其转换为类似HTML的表示法吗?

显然我假设最终用户将在他们的网络浏览器中拥有正确的编码设置,我只是想确保我从头到尾覆盖了所有这些。

我在Windows上使用Notepad ++来编辑我的PHP文件。

谢谢!

4 个答案:

答案 0 :(得分:1)

如果您想告诉浏览器您的编码,请将其放在<header>标记内:

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

或简短版

<meta charset='utf-8'>

这应该足以让俄语字符在网页上正确显示。

答案 1 :(得分:1)

如果您的doctype是html声明<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>,但如果您的doctype是xhtml,则声明<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

绝不假设最终用户在您的设计中会正确行事

如果您已有一些文档,请编辑文档的元标记用于charset声明并使用notepad ++编码&gt; 转换为UTF-8而不用BOM ,保存文档,安全地继续使用从现在开始多语言结构。

因为你没有提到任何数据库字符设置,所以php标签与你的问题无关。

答案 2 :(得分:1)

UTF-8中的拉丁字符和西里尔字符没有区别。两者都只是字节序列。配置您的服务器或PHP脚本以发送Content-Type: text/html;charset=utf,您就相当安全了。

当您使用的字体不包含俄语字符时,您的编辑器可能会出现问题。然后选择另一种字体。

请忽略<meta>元素推荐。您不需要:当您的HTTP标头正确时它是无用的,如果不正确则可能有害。

答案 3 :(得分:0)

你必须检查2件事

  • 为确保* .php是UTF-8文件,我使用PSPad。如果文件不是UTF-8,我保存 就像那样:http://stepolabs.com/upload/utf-8.png
  • 然后,您的网站必须在<meta>代码中包含UTF-8编码;

      

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

    ...更多关于metatagging

最后如果一切顺利 - (格式和元声明)都应该正确显示!