●XMLをキャッシュ
ちょっと前の記事で、
AmazonWebServiceのXMLがPearのCache_Liteでキャッシュできないんだよなあ・・・
と書いていたのですが、
Cache_Lite::save
マニュアルを参照すると、出来なくて当然。
引数が、stringですね。
マニュアルは、よく読め、と。
AmazonWebServiceのXMLがPearのCache_Liteでキャッシュできないんだよなあ・・・
と書いていたのですが、
Cache_Lite::save
マニュアルを参照すると、出来なくて当然。
引数が、stringですね。
マニュアルは、よく読め、と。
--
そこで、
stringでデータ取得できる、
file_get_contentsの戻り値をキャッシュしたら、無事キャッシュできました。
キャッシュデータをXML_RSSに食わせたら、ちゃんとパースしてくれたので、動作的にも問題なし、ということで、今後はこの方法でいこうかな、と。
まあ、実際に食わせたのは、再度ファイルに書き込んだ中間ファイル、ですが。
(XML_RSSはstringを読めないため)
simplexml_load_stringでは、stringデータを引数に指定できるので、AmazonWebServiceなどが返す、一般的なXMLデータも、この方法で処理できます。(中間ファイルは不要)
ただ、RSSに埋め込まれているHTML(content:encoded)がパースされないのが謎だ。
コロン付きって、simplexmlでは、認識されないのか?
実例とサンプル(ソース付き)は、
ウェザーマップで遊んでみる
に、まとめてあります。
ちなみに、RSSに埋め込まれているHTML(content:encoded)の表示サンプルも兼ねています。
--
そこで、
stringでデータ取得できる、
file_get_contentsの戻り値をキャッシュしたら、無事キャッシュできました。
キャッシュデータをXML_RSSに食わせたら、ちゃんとパースしてくれたので、動作的にも問題なし、ということで、今後はこの方法でいこうかな、と。
まあ、実際に食わせたのは、再度ファイルに書き込んだ中間ファイル、ですが。
(XML_RSSはstringを読めないため)
simplexml_load_stringでは、stringデータを引数に指定できるので、AmazonWebServiceなどが返す、一般的なXMLデータも、この方法で処理できます。(中間ファイルは不要)
ただ、RSSに埋め込まれているHTML(content:encoded)がパースされないのが謎だ。
コロン付きって、simplexmlでは、認識されないのか?
実例とサンプル(ソース付き)は、
ウェザーマップで遊んでみる
に、まとめてあります。
ちなみに、RSSに埋め込まれているHTML(content:encoded)の表示サンプルも兼ねています。
--
Comments
コメント入力は停止しています
海外からと思われるコメントスパムが横行しているため、全記事のコメント入力を停止しています。メッセージのある方は、ホームページの一番下に連絡欄がありますので、そちらからお願いします。