我目前正在使用simplexml_load_file(file.xml)
加载XML和$xmlRoot->saveXML('file.xml')
来保存XML文件,
代码实现了我的目标,但是当我打开保存的XML文件时,它总是有删除节点的空格和/或添加节点的非常长的元素行(1个父元素和1行中的所有子元素) )。
我的问题是如何通过php代码以干净的格式对其进行格式化?
(我想要类似于C#的XMLDocument
类,它在保存时自行格式化)
我当前的XML文件与此类似:
<rootElement>
<parentElement><childElement>data</childElement></parentElement>
<parentElement><childElement>data</childElement></parentElement>
</rootElement>
我希望它变成这样的东西:
<rootElement>
<parentElement>
<childElement>data</childElement>
</parentElement>
<parentElement>
<childElement>data</childElement>
</parentElement>
</rootElement>
它看起来很干净,但我有一个很大的XML文件,每个父元素有多个子元素
谢谢和欢呼
答案 0 :(得分:1)
尝试将simpleXml导入DOMDocument,它提供了一些格式选项:
$simpleXml = simplexml_load_file('file.xml');
$xmlDom = new DOMDocument('1.0');
$xmlDom->formatOutput = true;
$xmlDom->preserveWhiteSpace = false;
$xmlDom->loadXML($simpleXml->asXML());
echo $xmlDom->saveXML();
此致