这两者有什么区别,我应该同时使用吗?我希望我的网站完全是UTF-8。
在PHP中:
<?php
header("Content-Type: text/html; charset=utf-8");
?>
HTML中的元标记:
<meta charset="utf-8">
答案 0 :(得分:3)
HTTP <{1}}标头应该始终设置,它是浏览器确定它正在处理哪种文档的主要来源。只有当缺少此标头时,浏览器才会尝试查找HTML元标记,该标记为其提供与后备相同的信息。
虽然设置两个标志是有意义的,因为您可以将HTML文档保存到磁盘,在这种情况下,HTTP标头将在以后需要它的任何人身上消失。
您可以在此处找到浏览器如何确定文档字符集的确切规则:http://www.w3.org/TR/html5/syntax.html#determining-the-character-encoding
答案 1 :(得分:1)
header("Content-Type: text/html; charset=utf-8");
是服务器端,依赖于PHP脚本在将新页面发送到客户端之前调用它。
<meta charset="utf-8">
元元素有两个用途:要么模拟HTTP响应标头的使用,要么在HTML文档中嵌入其他元数据。 因此,元标记是在您的网站上使用utf-8的最佳方式。