如何在php中显示商标符号?

问题描述:

我遇到了麻烦,我无法显示商标符号? 我的代码发生了什么?如何在php中显示商标符号?

我在下面测试了这2个代码,但仍然失败了?

$textmsg = htmlspecialchars($textmsg); 
file_put_contents($textpath, $textmsg); 


preg_replace("™", "â„¢Â", $textmsg); 
file_put_contents($textpath, $textmsg); 
+0

看起来不像您想要替换的正确序列。 – alex 2011-05-09 06:37:58

+0

看起来像一个字符集/编码问题。 – Phliplip 2011-05-09 06:41:39

+0

你使用什么内容编码? – 2011-05-09 06:41:56

尝试使用HTML实体™其将显示为™。这同样适用于HTML和PHP。它也解决了文本编码的问题,这对你来说似乎是个问题,虽然没有更多的信息,但很难准确地说出问题。

如果你想输出到一个标准的文本文件,那么你将不得不处理你的编码问题。如果是这种情况,那么您需要提供更多信息,因为这些问题往往难以理清,甚至可能是您的文本编辑器而不是您的代码。

如果您尝试解决用户输入问题,另一个可能更好的解决方案是确保您的服务器发送正确的Content-Type HTTP标头,其中包括文本编码。这将使几乎所有浏览器都使用该编码发送数据,这意味着输出时也会正确显示。例如:

header("Content-Type: text/html; charset=utf-8"); 
+0

在php中显示是没有问题的,但是当我想在文本文件中读回时出现问题?怎么样 ? – user723128 2011-05-09 07:39:44

+0

@ user723128这个文件来自哪里?你需要注意文本编码,据我所知,PHP只支持UTF-8。如果你的文件不是UTF-8,那么这可能是你问题的根源 – 2011-05-09 09:04:22

如果您使用htmlentities()而不是htmlspecialchars会怎样?