输出奇怪的字符以在PHP中屏幕


Output Weird Characters To Screen in PHP

我正在尝试输出到包含奇数字符(例如® ™(的屏幕字符串。当我这样做时,替换所有奇怪的字符。我尝试查看htmlentities()但没有输出任何奇怪的字符。我知道我可以使用 HTML 代码,但这在我的情况下不起作用。

您正在进入字符编码领域。它使许多人感到困惑,因此这里有一些准则:

由于您正在处理 HTML,因此您可以随时使用 htmlentities .这会给你类似的东西; &abc;Ӓ .这些字符将始终正确显示。

另一种方法是使用字符集编码。这意味着您必须确保所有字符都以相同的字符编码输出,并向浏览器提供正确的字符编码提示。

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

强制浏览器使用 UTF-8。您可以替换ISO-8859-1是您的首选编码。

然后,如果您的所有输入都是 UTF-8,则您的输出也应该是 UTF-8。如果不是,请转换它。 utf8_encode会将字符串转换为 UTF-8。

var_dump( htmlentities('foo ®®', ENT_QUOTES, "UTF-8") );

确保您的源文件是 UTF-8 编码的。

大多数 IDE 在"另存为"对话框或文件选项中的某个位置提供"字符集"选项。