我正在使用simple_html_dom
来解析网站。
有没有办法提取doctype?
答案 0 :(得分:3)
您可以使用file_get_contents
功能从网站获取所有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];
?>
答案 1 :(得分: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 '
。