Simple HTML DOM Parserの読み込み上限。

HTML解析に便利なSimple HTML DOM Parserですが、findしたいタグがあるにもかかわらず、見つからないという謎現象が。

結論から言いますとね、単に解析対象のサイズが大きすぎただけというorz。

simple_html_dom.phpのソースを見ると、「MAX_FILE_SIZE」で上限を決めていて、バージョン1.5だと600kバイトと定義されています。

file_get_html()でもstr_get_html()でも、解析対象をstrlenに通した結果がMAX_FILE_SIZEを超える場合はfalseを返していますから、これが原因かと。

解析対照がタブコード一杯の空白行てんこ盛りな奴で、preg_replaceでタブコードを消してもNGになるという凶悪な奴だったため、simple_html_dom.php側を弄る羽目に。

上限2Mにしてやっと通ったのですけれども、コンテンツ1ページ(当然HTMLだけ)が

「フロッピー1枚にも入んないのかよ」

と。

# ま、今時フロッピーも無いですけれども(汗)。

コメント

タイトルとURLをコピーしました