强制“内容类型:文本/纯文本”显示在浏览器页面中


Force "Content-Type: text/plain" to display in browser page

我曾经设置过:

标头("内容类型:文本/纯文本");

当我想显示 PHP 输出的所有字符时,但现在似乎如果此输出中有特殊字符(''x00 ''x01 等),浏览器会尝试下载页面而不是显示它。

我尝试以这种方式设置字符集:

header('内容类型:文本/纯文本; 字符集=ISO-8859-1');

但结果是一样的。

即使这个有效(浏览器显示为页面而不是尝试下载):

header('Content-Type:text/plain; charset=ISO-8859-15');

这不是很好,因为某些字符并没有真正显示(如 ''x88 或 ''x91 等)。

那么有什么方法可以输出包含特殊字符并使用 ISO-8859-1 字符集的文本/纯文本,并强制浏览器在页面中显示此输出而不是尝试下载它?

这听起来像是一个奇怪的实验,你可能应该发送文本/html,可能带有pre标记。

无论如何,八位字节 88 和 91(十六进制)表示 ISO-8859-1 中的控制字符,没有普遍接受的分配。如果它们应该是可打印的字符,则可能应该声明 windows-1252。