使用不同语言utf8的Rss feed

时间:2012-11-08 14:59:27

标签: php utf-8 rss

我正在尝试使用以下Feed。 http://www.amaderbarisal.com/feed

所以你可以在孟加拉国看到它。

বরিশাল::বরিশালেলে্রশাসনিককিপদেরদবদলদবদলরাহয়েছে。 বৃহস্পতিবারজনপ্রশাসন

我正在运行此功能来从rss Feed中提取数据。

$source_xml = utf8_encode(file_get_contents($url));
$source_xml = simplexml_load_string(str_replace('content:encoded', 'description', $source_xml), 'SimpleXMLElement', LIBXML_NOCDATA);

echo "<pre>";
    print_r($source_xml);
echo "<pre>";

好的,简单的xml函数中发生了一些改变所有数据的事情,因为我输出到了以下内容。

ÃÂÂÂÂÃÂÂÂÂÂÂà¶Ã •ÃÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ

有人可以解释为什么会发生这种情况???

2 个答案:

答案 0 :(得分:0)

检查php.ini中的字符编码设置。这被设置为默认的标准拉丁语编码(ISO-8859)。如果你还没有,你需要改变它。

您是在具有Bangla字符字体支持的环境中输出的吗?

答案 1 :(得分:0)

这是utf8_encode()的说明:

  

utf8_encode - 将ISO-8859-1字符串编码为UTF-8

您的输入是否符合此功能所要求的ISO-8859-1?在Firefox中,您只需使用上下文菜单中的“查看页面信息”条目,它就会显示 UTF-8 。总结一下:

  • 您无法转换ISO-8859-1 中的,因为源文本不使用此类编码。
  • 您无需将转换为UTF-8 ,因为源文本已在使用此类编码。