0

我正在尝试打印一个字符串,如下所示:

足球新闻。

但是当我打印这个字符串时,它显示如下:

Noticias de F�tbol。

我尝试htmlspecialchar()了很多,但我的输出保持不变。

$str = "Noticias de Fútbol";
$strfoot = html_entity_decode($str);

我该如何解决这个问题?

4

4 回答 4

2

你不需要使用html_entity_decode,你可以简单地打印出你的$strwith echo,但你必须确保你的 html 中有这行代码<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> 
于 2012-09-01T05:43:56.087 回答
1

您很可能输出到指定了错误字符集的页面。要确认这一点,请打开 JavaScript 控制台并评估window.document.charSetwindow.document.characterSet.

如果是这种情况,您可以使用元标记来通知浏览器您想要的字符集:

<meta content="text/html; charset=utf-8">

我正在其他地方阅读标签可能是:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
于 2012-09-01T05:46:22.443 回答
1

你已经使用了 php 的字符集utf 8 和函数htmlentities

<meta http-equiv="content-type" content="text/html; charset=utf-8">

$test=htmlentities("Sisälämpötila");

echo $test;
于 2012-09-01T05:51:16.367 回答
0

您的 php 文件不是 utf-8,但浏览器将其读取为 utf-8,这给了您那个问号字符。将文件保存为 utf-8,大多数编辑器/IDE 都有设置文件字符集的选项。

于 2012-09-01T05:54:01.987 回答