我正在尝试转换所有内容 PHP 中常规空格的实例:
echo '<meta charset="UTF-8" /> ';
echo html_entity_decode(' ');
echo html_entity_decode(' ', ENT_COMPAT, 'UTF-8');
如果第一行被注释掉,那么输出将以 ISO 8859-1 格式显示:
Â
前面有一个空格的地方。如果指定 UTF-8 编码,则为:
�
这是一个未定义的 UTF-8 字符,后跟一个空格。不管编码如何,是否有办法确保所有 HTML 实体空间都能正确解码?
空格字符实际上只是一个例子,我想做的是从未指定的字符集中读取 html 输入并显示它。所以 < 和 <都会变成<。
最佳答案
不是空格。在 ISO 8859-1 中它是字节 160,在 UTF-8 中它是 \xc2\xa0
。正如名称no Breakable space
暗示浏览器不会将其替换为换行符。
如果您想要一个空格,则必须将其替换为空格。
关于php - PHP 中的 UTF-8 和 ISO 8859-1 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5136976/