2011年08月31日に投稿

[PHP]PHP Simple HTML DOM Parserで繰り返し処理を行うとメモリが大量に消費される

PHP Simple HTML DOM ParserというHTMLをパースを行いjQueryのように簡単にスクレイピングすることができるライブラリがあるのですが、forなどで繰り返しメソッドを使用すると大量にメモリを消費してしまい処理が中断してしまうことがありました。

その原因を調べたところ有名な現象のようですぐに解決策が見つかりました。下記のように$htmlの使用が終わったらclearメソッドの実行し、$htmlもunsetすることでforで繰り返してもメモリの大量消費が発生することはなくなりました。

参考
 http://simplehtmldom.sourceforge.net/manual_faq.htm
 http://looxu.blogspot.com/2010/07/blog-post.html

関連記事

Leave a Reply