我正在研究项目,它的一个功能是将数据添加到稍后将提取的XML
文件中,提取部分运行良好但不是添加部分。
我创建了一个新的php
文件,其中包含XML
添加部分的代码,但仍无效。
这是php
文件:
<?
$xml = simplexml_load_file('test.xml');
$msg = $xml->addChild('msg');
$msg->addChild('name', 'newName');
$msg->addChild('text', 'myText');
?>
以下是test.xml
文件:
<?xml version="1.0" encoding="UTF-8"?>
<msgs>
</msgs>
页面显示没有php错误,xml
仍然相同。
我一直在寻找解决方案几个小时但找不到。请帮忙!
答案 0 :(得分:1)
simplexml_load_file()返回一个要添加元素的SimpleXMLElement,现在需要将该实例序列化回文件:
$msg->asXML('output.xml');
或者,如果您只想将XML捕获为字符串:
$xmlString = $msg->asXML();
答案 1 :(得分:1)
问题是它做了它应该做但不保存的事情,将这个$xml->asXML('test.xml');
添加到php的末尾将使它保存在XML文件中。通过阅读asXML
doc的文件名部分找到它。这里asXML()