如何从输出中排除XML prolog?

时间:2009-10-06 19:15:15

标签: php xml domdocument

我写$xml = new DOMDocument();并自动创建<?xml version="1.0"?>。我不需要创建它。我怎么做?

一种解决方案是搜索第一个“&gt;”和第一个索引的strsub&lt;找到。但我喜欢更好的方法来做到这一点。

1 个答案:

答案 0 :(得分:5)

当您saveXML时,将根元素作为node参数传递。只序列化根元素及其内容,而不是根目录外的任何XML声明,doctype,注释或PI。

$doc->saveXML($doc->documentElement);

或者,如果您需要其他东西,但不是冗余声明:

$result= '';
foreach($document->childNodes as $node)
    $result.= $document->saveXML($node)."\n";