PHP 的 SimpleXML 不保存编辑后的数据
我正在尝试编辑一些 xml 数据。之后我想将数据保存到文件中。
问题在于simplexml没有保存编辑后的数据,但节点已更改。
$spieler = $xml->xpath("/planer/spieltag[@datum='" .$_GET['date']. "']/spielerliste/spieler");
for ( $i = 1; $i < 13; $i++ ){
if (!empty($_POST['spieler' .$i ])){
$spieler[$i-1] = $_POST['spieler' .$i];
}
}
var_dump($spieler);
$xml->asXML("data.xml");
var_dump() 显示新数据,但 asXML() 不显示。
I'm trying to edit some xml data. After this I want to save the data to file.
The problem is that the edited data isn't saved by simplexml but the node has changed.
$spieler = $xml->xpath("/planer/spieltag[@datum='" .$_GET['date']. "']/spielerliste/spieler");
for ( $i = 1; $i < 13; $i++ ){
if (!empty($_POST['spieler' .$i ])){
$spieler[$i-1] = $_POST['spieler' .$i];
}
}
var_dump($spieler);
$xml->asXML("data.xml");
var_dump() shows the new data, but asXML() doesn't.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
确保您的脚本具有对
data.xml
的写入权限Make sure your script has write permission to
data.xml
XPath 结果数组元素不是对实际树节点的 PHP (
$ref = &$var
) 引用,因此这一行不会修改树中的任何内容,您只需覆盖完全独立的数组中的条目。
The XPath result array elements aren't PHP (
$ref = &$var
) references to the actual tree nodes, so this lineisn't modifying anything in the tree, you're simply overwriting an entry in a completely independent array.