0

次のフィードを使用しようとしています。http://www.amaderbarisal.com/feed

バングラデシュで見ることができるように。

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

私はこの関数を実行して、RSSフィードからデータを取得しています。

$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関数で何かが起こっており、次のように出力されるため、すべてのデータが変更されています。

æ¬Ã¦°Ã¦¿Ã¦¶Ã¦¾Ã¦²::æ¬Ã¦°Ã¦¿Ã¦¶à ¦¾Ã¦²Ã§‡Ã¦ªÃ§Âæ°Ã¦¶Ã¦¾Ã¦¸Ã¦¨Ã¦¿Ã¦•à ¦•Ã§ŸÃ§‡Ã¦•Ã¦Â

なぜこれが起こっているのか誰かが説明できますか?

4

2 に答える 2

0

php.ini内の文字エンコード設定を確認してください。これは、デフォルトの標準ラテンエンコーディング(ISO-8859)に設定されています。まだ変更していない場合は、これを変更する必要があります。

ベンガル文字のフォントをサポートしている環境で出力していますか?

于 2012-11-08T15:07:44.047 に答える
0

これはutf8_encode()の説明です:

utf8_encode —ISO-8859-1文字列をUTF-8にエンコードします

この関数で必要なISO-8859-1への入力はありますか?Firefoxでは、コンテキストメニューの[ページ情報の表示]エントリを使用するだけで、UTF-8が表示されます。総括する:

  • ソーステキストがそのようなエンコーディングを使用していないため、ISO-8859-1から変換することはできません。
  • ソーステキストはすでにそのようなエンコーディングを使用しているため、UTF-8に変換する必要はありません。
于 2012-11-08T15:20:43.677 に答える