PHP - 如何在不使用标题的情况下保持UTF-8编码(" Content-Type:.......?

时间:2015-01-14 20:36:25

标签: php encoding utf-8 header

如果在我的PHP脚本开头,我使用以下行:

header("Content-Type: text/html; charset=utf-8",true);

我无法重定向页面:

header("Location: index.php")

那么如何设置编码是UTF-8,你仍然可以使用这个重定向代码?

你可以使用Javascript行重定向,但不要认为正确关闭并打开php来插入Javascript。

1 个答案:

答案 0 :(得分:1)

指定文档的内容类型不应该阻止HTTP重定向工作......但是大多数用户无论如何都不会看到该文档。只有那些不会自动遵循HTTP重定向的客户才能使用。

对于大多数客户端,它们将被重定向到index.php(请注意,您的Location标头中存在错误,HTTP规范要求包含绝对 URI,而不是相对URI一个)然后index.php将负责描述它输出的文档的内容类型。

您需要将header("Content-Type: text/html; charset=utf-8",true)放在index.php中,而不是放在重定向到它的脚本中。