我遇到了麻烦,我无法显示商标符号? 我的代码发生了什么?
我在下面测试了这两个代码,但仍然失败了?
$textmsg = htmlspecialchars($textmsg);
file_put_contents($textpath, $textmsg);
preg_replace("™", "â„¢Â", $textmsg);
file_put_contents($textpath, $textmsg);
答案 0 :(得分:9)
尝试使用将显示为™的HTML实体™
。这同样适用于HTML和PHP。它也解决了文本编码的问题,这对你来说似乎是个问题,虽然没有更多的信息,但很难确切地说出什么。
如果您尝试输出到标准文本文件,那么您将不得不处理编码问题。如果是这种情况,那么您需要提供更多信息,因为这些问题通常很难理解,甚至可能是您的文本编辑器而不是您的代码。
如果您尝试修复用户输入,另一个可能更好的解决方案是确保您的服务器正在发送正确的Content-Type
HTTP标头,包括文本编码。这将使几乎所有浏览器都使用该编码发送数据,这意味着它也会在输出时正确显示。例如:
header("Content-Type: text/html; charset=utf-8");
答案 1 :(得分:1)
如果您使用htmlentities()而不是htmlspecialchars会怎样?