質問

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

役に立ちましたか?

解決

あなたは、ウェブサイトからすべてのHTMLデータを取得するためにfile_get_contents機能を使用することができます。 たとえば、

<?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];
?>

他のヒント

あなたは$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 'を調べることができます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top