2012-05-09 18 views
2

それは戻っていますPHPのDOMDocument loadHTMLエラー

警告(!):のDOMDocument :: loadHTML()[domdocument.loadhtml]:エンティティ、行の見当違いのDOCTYPE宣言:3 Cで:\ WAMP \ WWWソース\ライン8

に.PHPコード:それは文句を言わない$コンテンツを解析し、いくつかの理由

<?php 

    $url = "http://www.some-plain-html-website.com"; 

    $content = file_get_contents($url); 

    $dom = new DOMDocument; 
    $dom->loadHTML($content); 

?> 

。コンテンツを$ content = ""のような文字列にすると、私は要素タグ名でそれを解析しますが、問題なく動作しますが、file_get_content()メソッドが返されると、そのエラーが発生します。

file_get_contents()のドキュメントでは文字列を返しますが、なんらかの理由でそれが動作しないと書かれています。私は$ content =(string)file_get_contents($ url);

前もってすべてのヘルプに感謝します。

答えて

2

取得しようとしているhtmlページが不正です。文書型宣言は、文書の最初の行でなければなりません。最初の2行を内容から外してから、loadHTML()をロードしてみてください。

+0

どうすれば調整できますか? –

+2

文字列の操作方法については、PHPのドキュメントを参照してください。......................... – dqhendricks

3

多くの場合、この方法では、警告がスローされず、ページがロードされている、とにかく

$dom->loadHTML($content);libxml_use_internal_errors(true);を使用することをお勧めします。

関連する問題