Php 设置不带字符集的内容类型
我试图将标题Php 设置不带字符集的内容类型,php,apache,character-encoding,http-headers,content-type,Php,Apache,Character Encoding,Http Headers,Content Type,我试图将标题内容类型设置为文本/html,但没有指定字符集。如果我运行以下代码: header('Content-Type: text/html'); var_dump(headers_list()); 我得到以下输出: ['Content-type: text/html;charset=UTF-8'] charset参数将自动添加!而内容类型更改为内容类型。任何类型为text的内容类型也会发生同样的情况。例如内容类型:text/foobar变成内容类型:text/foobar;字符集=UT
内容类型
设置为文本/html
,但没有指定字符集。如果我运行以下代码:
header('Content-Type: text/html');
var_dump(headers_list());
我得到以下输出:
['Content-type: text/html;charset=UTF-8']
charset
参数将自动添加!而内容类型
更改为内容类型
。任何类型为text
的内容类型也会发生同样的情况。例如内容类型:text/foobar
变成内容类型:text/foobar;字符集=UTF-8
如果我指定了任何其他参数,它们将被保留。例如内容类型:text/foobar;param=value
变成内容类型:text/foobar;参数=值;字符集=UTF-8
如果我指定charset
参数,则头不会更改。例如内容类型:text/html;charset=ISO-8859-1
内容类型:text/html;字符集=ISO-8859-1。在这种情况下,标题字段名称也不会从内容类型
更改为内容类型
如果我指定的内容类型的类型不是text
,则标题不会更改。例如内容类型:foo/bar
保持不变
如果没有
charset
参数,是否无法指定基于文本的内容类型?我正在使用PHP7.1.1和Apache2.4.26。在PHP.ini
中查找default\u charset=“UTF-8”
并将其替换为空字符串。它可能会把东西弄坏,看到了吗