我有一个XML文件,我从中提取了以下文本 -
Sansa Clip + MP3播放器为您提供 更多享受。享受高达2,000 歌曲††配8GB *播放器,FM收音机, 长寿命电池和录音机。 现在加上更多!扩大你的 添加预装时享受 内容卡**进入新的记忆 卡槽,包括slotRadio™和 slotMusic™卡**。或者,保存自己的 音乐,播客和有声读物 microSD™/ microSDHC™存储卡** 扩大你的游戏。它带给你 由SanDisk提供令人敬畏的声音 你的音乐。只需剪辑并享受 更多音乐与令人难以置信的15 小时†以电池为燃料的乐趣。看什么 你正在用明亮的, 易于阅读的屏幕和直观 可搜索的菜单。为你的世界着色 红色,蓝色或光滑的黑色底色。
为什么它会在我的网页上显示如下,如何自动修复?感谢。
Sansa Clip + MP3播放器让您享受更多乐趣。享受多达2,000首歌曲 - 配备8GB *播放器,FM收音机,长寿命电池和录音机。现在加上更多!当您将预装的内容卡**添加到新的存储卡插槽中时,扩展您的乐趣,包括slotRadioâ“和slotMusicâ”卡**。或者,将您自己的音乐,播客和有声读物保存到microSDâ“¢/ microSDHC”存储卡**上以扩展您的游戏。它由SanDisk带给您,声音很棒,可以欣赏您的音乐。只需将它夹在上面,享受更多音乐,享受令人难以置信的15小时电池乐趣。通过明亮,易于阅读的屏幕和直观可搜索的菜单,了解您正在聆听的内容。用红色,蓝色或光滑的黑色底色为您的世界着色。
注意:我尝试过preinheimer的建议,
首先,我用一个效果很好的文本文件对其进行了测试。
$content = file_get_contents("test.txt");
echo htmlentities($content);
但是当我动态地尝试同样的事情时,它不起作用并且文本保持不变。
$content = $responseTemp->Items->Item->EditorialReviews->EditorialReview[$j]->Content;
echo htmlentities($content);
它们都包含相同的文本,但由于某种原因,动态版本不起作用。
另一个更新:我尝试了Juan的建议,这是一个小小的改进,但仍然无法正确再现,用问号替换了许多字符。 这是它给我的东西,
Sansa Clip + MP3播放器为您提供 更多享受。享受高达2,000 歌曲?配备8GB *播放器,FM收音机, 长寿命电池和录音机。 现在加上更多!扩大你的 添加预装时享受 内容卡**进入新的记忆 卡槽,包括slotRadio?和 slotMusic?牌**。或者,保存自己的 音乐,播客和有声读物 microSD?/ microSDHC?存储卡**到 扩大你的游戏。它带给你 由SanDisk提供令人敬畏的声音 你的音乐。只需剪辑并享受 更多音乐与令人难以置信的15 小时?电池驱动的乐趣。看什么 你在听着明亮的, 易于阅读的屏幕和直观 可搜索的菜单。为你的世界着色 红色,蓝色或光滑的黑色底色。
最终更新:啊哈,我的错误,我在Juan的例子中用'utf-8'替换了$ myOutputEncoding,并在head标签中添加以下内容以使其正常工作,
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
答案 0 :(得分:3)
这听起来像是一个字符集问题。 幸运的是,我写了一篇今天发表的文章。 http://phpadvent.org/2009/character-sets-by-paul-reinheimer
检查XML文档中的字符集(应该位于顶部,可能是UTF-8),然后尝试使用相同的字符集为页面提供服务。
答案 1 :(得分:2)
由于您不知道原始编码,您可以尝试使用mb_detect_encoding
进行猜测
$content = $responseTemp->Items->Item->EditorialReviews->EditorialReview[$j]->Content;
$encoding = mb_detect_encoding( $content );
$encodedText = mb_convert_encoding( $content, $myOutputEncoding, $encoding );
其中$myOutputEncoding
是您使用的编码。然后,当您输出$encodedText
时,它应该正确显示文本。