当然,这个问题之前已经被问过,并且已经在寻找解决方案,但到目前为止都没有奏效。我想通过使用 htmlentities
或 htmlspecialchars
将 TM 符号和符号更改为它们的 html 等价物:
$TEST = "Kold Locker™ & other stuff";
echo "ORGINIAL: " . $TEST . "<BR/>";
echo "HTML: " . htmlentities($TEST, ENT_COMPAT, 'UTF-8');
这显示:
ORGINIAL: Kold Locker™ & other stuff
HTML:
我也用 htmlspecialchars
尝试过,第二个参数改变了,结果相同。
我错过了什么其他人声称在其他解决方案中有效的东西?
更新:我尝试只显示 utf8_encode($TEST)
,它显示了 HTML: Kold Locker™ & other stuff
最佳答案
我不知道为什么,这对我有用(htmlentities 必须为我调用两次)
$html="<html> <head><head>something like this </html>"
$entities_correction= htmlentities( $html, ENT_COMPAT, 'UTF-8');
echo htmlentities( $entities_correction, ENT_COMPAT, 'UTF-8');
输出:
<html> <head><head>something like this </html>
关于PHP htmlentities 即使有参数也不能工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15815899/