• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:simplexml_load_file() のかわりの simplexml_load_string() がエラーになる)

simplexml_load_string()を使ったRSSの読み込みでエラーが発生する

このQ&Aのポイント
  • PHPのsimplexml_load_string()関数を使用してRSSを読み込んでいる際に、一部のRSSでエラーが発生します。
  • レンタルサーバではallow_url_fopenをONにできないため、simplexml_load_file()ではなくsimplexml_load_string()を使用しています。
  • simplexml_load_string()を使用すると、amebloのフィードは正常に読み込めますが、他のRSSではエラーが発生します。原因がわからず、解決策を探しています。

質問者が選んだベストアンサー

  • ベストアンサー
noname#111181
noname#111181
回答No.1

http関数がどんな挙動をしているのか分からないのですが、最終行 "</rdf:RDF>" まで読み込んでいますか? var_dump($line) でチェックして下さい。 amebloのフィードは "</rdf:RDF>\n" で終わっていますが、他のRSSは改行が無く終わっているのです。 以上、ご確認下さい。

nakamuchan
質問者

お礼

どうもありがとうございました!

nakamuchan
質問者

補足

i80286さん、回答ありがとうございます。 試してみた結果、最後に、<rdf.RDF>まで取得できていました。 下記、デバッグ出力結果(抜粋)となります。 「</dc:date></item></rdf:RDF>」 回答いただいた時には、「おおお!」と興奮しましたが、 他にも理由がありそうです。 また、心当たりなど、思いついたことなどがあれば、 些細なことでもぜひご連絡いただけると嬉しいです。 今後とも宜しくお願いいたします。

関連するQ&A

専門家に質問してみよう