Php 去掉特殊字符

Php 去掉特殊字符,php,Php,我从带有产品列表的HTML页面中提取一些数据,对于一些文本,它如下所示: 有机食品 在HTML页面中,当我看到相同的文本时,我可以看到它应该是有机的,后面有TM(商标)符号。为什么它看起来像上面 我的主要问题是,我怎样才能去掉TM、@和版权符号,让我只留下一个干净的产品名称 谢谢大家的帮助这是一个编码问题;html页面编码和输出设备编码之间存在差距 你必须把这合理化。最好是让您的工作环境使用utf8,并将所有外部数据转换为utf8。您的页面声明了错误的字符集(或者根本没有声明任何字符集) 查看源

我从带有产品列表的HTML页面中提取一些数据,对于一些文本,它如下所示:

有机食品

在HTML页面中,当我看到相同的文本时,我可以看到它应该是有机的,后面有TM(商标)符号。为什么它看起来像上面

我的主要问题是,我怎样才能去掉TM、@和版权符号,让我只留下一个干净的产品名称


谢谢大家的帮助

这是一个编码问题;html页面编码和输出设备编码之间存在差距


你必须把这合理化。最好是让您的工作环境使用utf8,并将所有外部数据转换为utf8。

您的页面声明了错误的字符集(或者根本没有声明任何字符集)

查看源HTML并查看
标题
部分是否有类似


如果没有这样的标记,或者标记在那里,但是
字符集
位丢失,则您尚未声明字符集。如果标记在那里并且
字符集
位存在,则声明的字符集是错误的。查看您给出的具体示例,看起来文本可能是UTF-8,但显示为拉丁语-1。

这是我最初的想法。实际上,我尝试了utf_解码,最后几个字符变成了一个
。也许我可以相信这一点,去掉问号?你不需要解码,只需要编码。解码只会使您从utf8转换为unicode(例如)。web服务器本身也可以在HTTP
Content-Type
标记中声明字符集(因此为什么
HTTP equiv=“Content-Type”