removendo o doctype ao guardar o domdocument

Estou analisando e obtendo documentos html para o DOMDocument. Esses documentos são formulários infantis que serão exibidos dentro de outra página. Ao salvar os DOMDocuments analisados, ele adiciona automaticamente tags doctype, html, head e body. Uma vez que estou trabalhando em formulários infantis, gostaria de remover todos aqueles e salvar apenas as etiquetas filho do formulário.

Como posso ignorar a geração automática de html, cabeça, corpo e outras etiquetas enquanto guardo domdocument?

O mesmo que @KoolKabin responde, mas um pouco mais curto:

return preg_replace('~<(?:!DOCTYPE|/?(?:html|body))[^>]*>\s*~i', '', $dom->saveHTML()); 

Obtive-me depois de ler centenas de links. Espero que ajude outras pessoas também …

 return preg_replace('/^/', '', str_replace( array('', '', '', ''), array('', '', '', ''), $objDOM->saveHTML())); 

Detalhe em: http://www.php.net/manual/en/domdocument.savehtml.php

A partir do PHP 5.4 e do Libxml 2.6, existe uma abordagem mais simples: quando você carrega o html como este

 $html->loadHTML($content, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD); 

na saída, não haverá tags doctype, html ou body. fonte