1

私はsimple_html_domウェブサイトを解析するために使用しています。Doctype を抽出する方法はありますか?

4

2 に答える 2

3

関数を使用file_get_contentsして、WebサイトからすべてのHTMLデータを取得できます。例えば

<?php
   $html = file_get_contents("http://google.com");
   $html = str_replace("\n","",$html);
   $get_doctype = preg_match_all("/(<!DOCTYPE.+\">)<html/i",$html,$matches);
   $doctype = $matches[1][0];
?>
于 2009-10-14T13:26:56.550 に答える
1

使用できます$html->find('unknown')。これは、少なくとも、simplehtmldom ライブラリのバージョン 1.11 では機能します。次のように使用します。

function get_doctype($doc)
{
    $els = $doc->find('unknown');

    foreach ($els as $e => $el) 
        if ($el->parent()->tag == 'root') 
            return $el;

    return NULL;
}

これは、見つかった可能性のある他の「不明な」要素を処理するためのものです。最初はdoctypeになると思います。->innertextただし、で始まることを確認したい場合は、明示的に調べることができ'!DOCTYPE 'ます。

于 2011-12-04T13:21:56.050 に答える