【发布时间】:2012-07-24 16:05:45
【问题描述】:
我的数据库中的某些行包含某种撇号,当使用 PHP 显示时,它会转换为中心带有问号的菱形。例如,如果它正确复制:Captain Jim O’Brien
这些“撇号”很可能是通过 TinyMCE 插入的,用户从 Word 或 Mac 计算机中复制和粘贴。
如何显示这些“撇号”?当我在 PHPMyAdmin 中查看该行时,会显示撇号(没有菱形),所以显然有办法。
我的字符编码设置为 UTF-8,我尝试了 htmlspecialchars($string) 和 htmlentities($string),但没有成功。
【问题讨论】:
-
你试过
htmlentities($string, ENT_QUOTES, 'UTF-8');吗?对于字符编码,您应该始终指定您正在使用的编码(UTF8 等) - 如果您还没有。 -
@newfurniturey 当名称包含无效撇号时,它实际上显示一个空白名称。
-
@newfurniturey 它看起来是空白的,因为它实际上是在抛出
Invalid multibyte sequence错误。
标签: php html character-encoding