[PHP-users 35727] Re: DOMDocument

Yoshi Saito yk_mailing @ excite.co.jp
2012年 6月 5日 (火) 00:05:09 JST


後藤様

ご回答ありがとうございました。

なるほど!!
HTML5なのですか。
自分、今までHTML5は触った事なくて、今初めてヘッダ部の事を知りました。
HTML5とか書いてなかったので、全然分かりませんでした。

これはかなり重大な見落としですね。
非常に参考になりました。
ちょっと試してみます。



<gotou1213 @ gmail.com> wrote:
> 後藤と申します。
> 
> DOMDocument::loadHTML は metaタグからHTMLの文字エンコーディングを判断していたと思いますが、
> 
> http://www.nhk.or.jp/worldwave/abc/popup/abc120423.html
> 
> ↑の charset が HTML5 な指定になっているため、loadHTML で
> エンコーディングが解釈できていないからではないでしょうか?
> 
> 試しにそのページのHTMLをダウンロードして、meta タグの charset の部分を
> 下記のように書き換えて loadHTML に渡せば上手くいくと思います。
> 
>   <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
> 
> もしくは loadHTML の直前で
> 
>   $html = mb_convert_encoding($html, 'HTML-ENTITIES', 'auto');
> 
> などとして、マルチバイト文字を数値文字参照に置き換えてやるとか。
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://oldwww.php.gr.jp/php/novice.php3
> 
Yoshi Saito


PHP-users メーリングリストの案内