首页 > 解决方案 > 通过simplexml将记录写入xml文件?

问题描述

$xmldbase = simplexml_load_file($xmlfile);
$date = date();

$id = (integer) $xmldbase['id'];
$xmldbase['id'] = $id+1;

$xmlString = "
    <player>
        <id>$id</id>
        <name>$name</name>
        <date>$date</date>
        <score>$score</score>
        <right>$rightA</right>
        <false>$falseA</false>
        <ip>$ip</ip>
    </player>";

$xmldbase = new SimpleXMLElement($xmlString);

$xmldbase->asXML($xmlfile);

到目前为止,这有效,但不会将节点播放器添加到我的文件中,它会被覆盖。但是如何添加我的播放器节点?该示例不加载文件(https://www.php.net/manual/de/simplexmlelement.addchild.php)应该在哪里添加数据?

标签: phpxmlfilesimplexml

解决方案


代码类似于:

$xmldbase = simplexml_load_file($xmlfile);
$date = date();

$id = (integer) $xmldbase['id'];
$xmldbase['id'] = $id+1;

// add new `player` node to root xml-element
$player = $xmldbase->addChild('player');
// add `id` node to just created `player` node
$player->addChild('id', $id);
// add `name` node to just created `player` node
$player->addChild('name', $name);
// add other nodes here

$xmldbase->asXML($xmlfile);

推荐阅读