0

simpleXMLElement新しいxmlファイルを作成するために使用しています。次のようなものを作成したいと思います。

<?xml version="1.0"?>
<command type="scenario" name="test">
    <game type="play" filename="google">
    </game>
</command>

私はこのコードを使用していますが、何かが正しくありません:

<?php

$xml = new SimpleXMLElement("<?xml version=\"1.0\" ?><command type='scenario'></command>"); 
$xml->addAttribute('name', 'test');
$game = $xml->addChild('game');
$game->addAttribute('type', 'play');
$game->addAttribute('filename', 'google');

// checking the output
$handler = fopen(sad.xml, 'w');
fwrite($handler, $xml->asXML());
fclose($handler);

?>

sad.xmlしかし、これは代わりにファイルに表示される出力です:

<?xml version="1.0"?>
<command type="scenario" name="test"><game type="play" filename="google"/></command>

なんで?

  1. ファイルに改行が表示されない
  2. game</game>タグに終了タグがありません
4

2 に答える 2

0

これを試して。

$game = new SimpleXMLElement('', LIBXML_NOEMPTYTAG);    
$xml->addChild($game);

そして、ここで出力をフォーマットするための解決策を見つけることができますPHP simpleXML how to save file in aformatted way?

于 2013-06-06T17:59:56.843 に答える