PHP / XML乱码文本

时间:2017-07-13 07:17:30

标签: php xml

我正在使用以下课程:

class rss {
    public function rssReader($rssLocalSource,$rssSetLimit){
        $rss = new DOMDocument();
        $rss->load($rssLocalSource);
        $feed = array();

        $countMaxArticles = array();
        foreach ($rss->getElementsByTagName('item') as $node) {
            $item = array ( 
                'title' => $node->getElementsByTagName('title')->item(0)->nodeValue,
                'link' => $node->getElementsByTagName('link')->item(0)->nodeValue,
                );
                $countMaxArticles[] = 1;
                array_push($feed, $item);
            }
            $totalNumArticles = count($countMaxArticles);
            $setRssLimit = min($totalNumArticles,$rssSetLimit);

            echo '<div class="rss-links">';
            echo '<ul>';
            for($x=0;$x<$setRssLimit;$x++) {
                //$title = str_replace(' & ', ' &amp; ', $feed[$x]['title']);
                $title = utf8_encode ($feed[$x]['title']);
                $link = $feed[$x]['link'];
                echo '<li><a target="_blank" href="'.$link.'">'.$title.'</a></li>';
            }
            echo '</ul>';
            echo '</div>';
        }
}

上述代码基本上读取报纸头条的标题并输出链接。

XML文件中的文本没有乱码。虽然当上面的代码读取XML文件时,文本会出现乱码

e.g。标题

  

银行需要'区块链技术的混合方法':Ripple的Marcus Treacher

正在推出

  

银行需要â€〜混合方式进行区块链技术的挑战:RippleÂ's Marcus Treacher

1 个答案:

答案 0 :(得分:0)

我通过改变

解决了这个问题
$title = utf8_encode ($feed[$x]['title']);

$title = iconv('UTF-8', 'ASCII//TRANSLIT', $feed[$x]['title']);