是否有一个选项与DomDocument删除第一行:
<?xml version="1.0" encoding="UTF-8"?>
Run Code Online (Sandbox Code Playgroud)
类实例化自动将它添加到输出中,但是可以摆脱它吗?
hrv*_*j3e 22
我认为使用DOMDocument是有效XML文件的通用解决方案:
如果你已经在变量中加载了xml:
$t_xml = new DOMDocument();
$t_xml->loadXML($xml_as_string);
$xml_out = $t_xml->saveXML($t_xml->documentElement);
Run Code Online (Sandbox Code Playgroud)
对于磁盘中的XML文件:
$t_xml = new DOMDocument();
$t_xml->load($file_path_to_xml);
$xml_out = $t_xml->saveXML($t_xml->documentElement);
Run Code Online (Sandbox Code Playgroud)
这条评论帮助:http://www.php.net/manual/en/domdocument.savexml.php#88525
use*_*396 12
如果要输出HTML,请使用该saveHTML()功能.它自动避免了大量的XML习惯用法并正确处理已关闭/未闭合的HTML习惯用法.
如果你想输出XML,你可以使用一个事实,即DOMDocument是一个DOMNode(即:"/"在XPath表达式),因此你可以使用DOMNodeAPI调用它来遍历子节点,并调用saveXML()每个子节点上.这不会输出XML声明,它会正确输出所有其他XML内容.
例:
$xml = get_my_document_object();
foreach ($xml->childNodes as $node) {
echo $xml->saveXML($node);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18088 次 |
| 最近记录: |