好的,所以我有一个PHP文件,其中包含多种语言的几个文本字符串。对于大多数语言,如法语或西班牙语,我只需输入字符。
我遇到的问题是俄语字符。 PHP文件以UTF-8编码,如何确保俄语字符都正确保存并在输出网页上正确显示...是否只是将文本粘贴到PHP文件中,或者是有一种方法可以保证字符正确保存到文件中 - 例如可能将其转换为类似HTML的表示法吗?
显然我假设最终用户将在他们的网络浏览器中拥有正确的编码设置,我只是想确保我从头到尾覆盖了所有这些。
我在Windows上使用Notepad ++来编辑我的PHP文件。
谢谢!
答案 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)
然后,您的网站必须在<meta>
代码中包含UTF-8编码;
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
...更多关于metatagging。
最后如果一切顺利 - (格式和元声明)都应该正确显示!