在哪里放PHP编码类型头?

She*_*rri 5 php character-encoding

我正在学习处理UTF8字符集,建议在PHP脚本中的输出头中显式设置编码类型,如下所示:

header('Content-Type: text/html; charset=utf-8');
Run Code Online (Sandbox Code Playgroud)

我的问题是关于我应该放置此标题的位置.我有一个包含在每个脚本中的配置文件,并且首先运行.我应该将它放在该文件的顶部,以便这个标头首先包含在每个php文件中吗?

这是否会影响我设置其他标头的能力,包括标题位置重定向到线?或者我应该在任何html输出之前放置它,例如我的模板文件的渲染?也就是说,在所有其他php处理之前,这个标题是否就位,这样做的后果是什么?它会影响任何服务器端,还是只影响输出的编码?

谢谢.!

You*_*nse 4

虽然此标头的早期设置不会影响任何服务器端或其他类型的标头,但您的问题是基于假设您的代码要输出的唯一内容是html类型而提出的。

然而,一般的 PHP 应用程序有时会输出一些其他类型的内容,例如application/pdfapplication/excel其他类型。

因此,在html输出之前发送它似乎是正确的位置。