我正在尝试打印一个字符串,如下所示:
足球新闻。
但是当我打印这个字符串时,它显示如下:
Noticias de F�tbol。
我尝试htmlspecialchar()
了很多,但我的输出保持不变。
$str = "Noticias de Fútbol";
$strfoot = html_entity_decode($str);
我该如何解决这个问题?
你不需要使用html_entity_decode
,你可以简单地打印出你的$str
with echo
,但你必须确保你的 html 中有这行代码<head>
:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
您很可能输出到指定了错误字符集的页面。要确认这一点,请打开 JavaScript 控制台并评估window.document.charSet
和window.document.characterSet
.
如果是这种情况,您可以使用元标记来通知浏览器您想要的字符集:
<meta content="text/html; charset=utf-8">
我正在其他地方阅读标签可能是:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
你已经使用了 php 的字符集utf 8
和函数htmlentities
像
<meta http-equiv="content-type" content="text/html; charset=utf-8">
$test=htmlentities("Sisälämpötila");
echo $test;
您的 php 文件不是 utf-8,但浏览器将其读取为 utf-8,这给了您那个问号字符。将文件保存为 utf-8,大多数编辑器/IDE 都有设置文件字符集的选项。