2012年6月4日月曜日

simplexml_import_domで文字化け

scrape_func.phpとsimplexml_import_domを組み合わせてスクレイピングを試していたらUTF-8なのに文字化けしてしまいました。 原因は、getBlock()で抽出すると適切なmetaタグが取れてしまうためのようです。 ちゃんとエンコーディングの設定がないと駄目なんですね;; PHP:DOMDocument::loadHTML
            $res = cleanString($res);
            $res = '<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head><body>'.getBlock('<div id="products">', '</div>', $res).'</body>';
            $dom = new DOMDocument();
            $dom->loadHTML($res);
            $xml = simplexml_import_dom($dom);
            print_r($xml);

0 件のコメント:

コメントを投稿