【发布时间】:2010-10-19 06:37:02
【问题描述】:
我正在使用DOMDocument 生成一个新的 XML 文件,我希望文件的输出能够很好地缩进,以便人类读者可以轻松理解。
比如DOMDocument输出这个数据时:
<?xml version="1.0"?>
<this attr="that"><foo>lkjalksjdlakjdlkasd</foo><foo>lkjlkasjlkajklajslk</foo></this>
我希望 XML 文件是:
<?xml version="1.0"?>
<this attr="that">
<foo>lkjalksjdlakjdlkasd</foo>
<foo>lkjlkasjlkajklajslk</foo>
</this>
我一直在四处寻找答案,我发现的一切似乎都在试图以这种方式控制空白:
$foo = new DOMDocument();
$foo->preserveWhiteSpace = false;
$foo->formatOutput = true;
但这似乎没有任何作用。也许这仅在读取 XML 时有效?请记住,我正在尝试编写新文档。
DOMDocument 有内置的功能吗?或者有什么功能可以轻松完成?
【问题讨论】:
-
这里有一个很好的简单函数(基于正则表达式):Format XML with PHP
-
我不确定问题是什么。您显示的代码将给出您要求的输出。证明:codepad.org/4UGyRspx 和 codepad.org/bLTOFQrp - 您是否询问缩进级别,例如使用了多少个空格?
标签: php xml whitespace indentation domdocument