如何通过PHP DOMDocument删除XML文件的根元素
我有一个XML文档&一个PHP文件 我想删除PHP文件中if语句下XML文档的根元素,这意味着XML文件将为空如何通过PHP DOMDocument删除XML文件的根元素,php,xml,dom,Php,Xml,Dom,我有一个XML文档&一个PHP文件 我想删除PHP文件中if语句下XML文档的根元素,这意味着XML文件将为空 有没有一种通过DOM文档快速执行此操作的方法?假设XML文档是服务器上的一个平面文件,您可以不用使用DOM来执行此操作,只需像这样截断文件内容: $f = fopen("document.xml", "r+"); ftruncate($f, 0); fclose($f); 要删除DOMDocument中的根元素,请从文档中删除document元素(我阅读您的问题时的根元素),类似于如
有没有一种通过DOM文档快速执行此操作的方法?假设XML文档是服务器上的一个平面文件,您可以不用使用DOM来执行此操作,只需像这样截断文件内容:
$f = fopen("document.xml", "r+");
ftruncate($f, 0);
fclose($f);
要删除DOMDocument中的根元素,请从文档中删除document元素(我阅读您的问题时的根元素),类似于如何删除任何其他子元素:
<?php
$xml = <<<XML
<root/>
XML;
$doc = new DOMDocument();
$doc->loadXML($xml);
$doc->save('php://output');
echo "---\n";
$doc->removeChild($doc->documentElement);
$doc->save('php://output');
documentElement);
$doc->save($doc)php://output');
输出:
<?xml version="1.0"?>
<root/>
---
<?xml version="1.0"?>
---
(运行示例:)
如本例所示,文档元素已从文档中删除。如果没有XML声明,它将是空的。这不起作用。我得到一个未定义变量的错误。谢谢。你能在你原来的帖子中显示你使用的代码和确切的错误信息吗?