У вас уже есть player
ребенок в вашем players
.Я думаю, вам нужно другое имя для players
parent $xml->players->addChild("player2", " ");
Редактировать: когда я проверял код, я увидел, что я ошибался
это на самом деле работает
$xml = '<?xml version="1.0" encoding="UTF-8" ?>
<root>
<updated></updated>
<players>
<playernum>1</playernum>
<!--Demonstration of syntax, using the value 127.0.0.1 and the first second of December 22, 2012 with salt of 000 -->
<player id="7bea7450391c9d89c65af7a46966e45066105fa4">
<game id="1">
<color>red</color>
</game>
<game id="2">
<color>purple</color>
</game>
</player>
</players>
</root>';
$xml = simplexml_load_string($xml);
$newPlayer = $xml->players->addChild("player", " ");
$newPlayer->addAttribute("id", "12313123123");
$newGame = $newPlayer->addChild("game", "");
$newGame->addAttribute("id", "1");
$newColor = $newGame->addChild("color", "blue");
echo $xml->asXML();
результат:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<updated/>
<players>
<playernum>1</playernum>
<!--Demonstration of syntax, using the value 127.0.0.1 and the first second of December 22, 2012 with salt of 000 -->
<player id="7bea7450391c9d89c65af7a46966e45066105fa4">
<game id="1">
<color>red</color>
</game>
<game id="2">
<color>purple</color>
</game>
</player>
<player id="12313123123">
<game id="1">
<color>blue</color>
</game>
</player>
</players>
</root>