【发布时间】:2015-05-30 06:18:39
【问题描述】:
我有一个带有一些描述的简单网页,它的数据来自 mysql 数据库,我正在使用 PHP 显示它,但在一些描述中,我在两个词之间得到“�”符号。 我已经尝试过 htmlentities 和 htmlspecialchars,但是什么都不起作用,最后我从元标记中删除了 charset='utf-8' ,然后它就可以工作了。但它是强制使用的。
那么,我怎样才能去掉我的描述中的“�”?
【问题讨论】:
-
是否有可能您的 PHP 代码是从其他地方复制和粘贴的,或者您的数据库中的数据是?尝试在问题行手动重新键入您的 PHP 代码,并尝试使用新数据手动更新问题表行以查看您的问题是否已解决。
-
您的字符与字符集不匹配。你有没有看过
"的引用,但它看起来像是斜体,但不是,它只是一个混乱的字符。通常这发生在来自其他地区的人的数据中,插入数据,然后将其打印在页面上。您不应该删除元字符集标签。看看数据,你在哪里得到奇怪的符号,你可能有一个搞砸的字符。即使您不确定,也请删除该角色,然后自己将其放回原处。 -
尝试在您的 .htaccess 文件中添加:AddDefaultCharset utf-8
-
是的,我已经从一个站点复制数据,并插入到数据库中,但是我复制了 1500 多个描述。所以很难手动重新输入?还有其他解决办法吗?
-
� 是有效文本,指示由于在转换过程中错误识别源编码而导致数据丢失的点。理想情况下,您会返回并以正确的方式获得它。删除字符集元标记可能会导致进一步的数据丢失——只是它恰好使结果看起来更漂亮。