试图让“é”字符正确打印出来

时间:2014-01-30 14:24:58

标签: php html-entities html-escape-characters

我正在尝试从itunes获取rss / xml Feed,我注意到é中有beyoncé之类特殊章程的艺术家和歌曲显示为Beyoncé

我已尝试以下方法让它正确显示但不成功我在谷歌搜索并搜索了这里的正确答案,但遗憾的是没有工作。

这是我试过的 - 我可能会离开。

echo html_entity_decode($entry->imartist, ENT_COMPAT, 'UTF-8');

这是完整的代码

function itunes(){
$itunes_feed = "https://itunes.apple.com/au/rss/topsongs/limit=100/explicit=true/xml";
$itunes_feed = file_get_contents($itunes_feed);
$itunes_feed = preg_replace("/(<\/?)(\w+):([^>]*>)/", "$1$2$3", $itunes_feed);
$itunes_xml = new SimpleXMLElement($itunes_feed);
$itunes_entry = $itunes_xml->entry;

foreach($itunes_entry as $entry){
    echo html_entity_decode($entry->title."<br>", ENT_COMPAT, 'UTF-8');
    echo html_entity_decode($entry->imartist, ENT_COMPAT, 'UTF-8');
    echo "<br><br>";
    // Get the value of the entry ID, by using the 'im' namespace within the <id> attribute
    $entry_id['im'] = $entry->id->attributes('im', TRUE);
    echo (string)$entry_id['im']['artist'];
    //echo $entry_id['artist']."<br>";
}
}

1 个答案:

答案 0 :(得分:1)

该Feed是有效的UTF-8,您不需要使用html_entity_decode对其进行解码。如果您在HTML页面的<meta charset="utf-8" />中添加<head>会怎样?