2

この RSS フィードを SimplePie で解析しようとしています。

http://www.merdekapost.com/feeds/posts/default

また、フィードが巨大であるため、メモリ リークが発生します。それは 4 Mb を超えており、SimplePie が XML を解析しようとすると、使用可能なすべての RAM がいっぱいになります。

問題は、XML パーサーにすべての RAM をあきらめることなく、このような大きなフィードを解析する必要があるということです。このフィードのすべての項目が必要なわけではなく、最新のニュースだけが必要なので、XML の一部のみを解析する方法はありますか? このような大きなファイルを完全に解析しないように SimplePie を編集 (または構成) できますか?

set_item_limit() を試しましたが、解析される XML の量を制限していないと思います。

これはよくある問題だと思いますが、答えが見つかりません。アドバイスいただけますか?

4

1 に答える 1

2

xml ページのサイズが原因でメモリ リークが発生する場合は、最初に file_get_contents() または curl で xml の内容を取得し、不要な部分を自分で切り取ることができます。その後、変更されたデータをset_raw_data()を使用して SimplePie に渡し、フィード アイテムを取得します。例はここに文書化されています。

于 2012-09-01T06:54:18.657 に答える