0

これを取得するために、PHP コードから XML ドキュメントを作成しようとしています。

<xml version="1.0">
<parada nombre="Test Name" total="Test TOTAL">
       <linea numero="TestN" destino="TestD" minutos="TestM"/>
       <linea2 numero="TestN" destino="TestD" minutos="TestM"/>
</parada>

PHPに次のコードがあります。

<?php


$xml = new SimpleXMLElement('<xml/>');

$parada = $xml->addChild('parada');
$parada->addAttribute('nombre', 'Test Name');
$parada->addAttribute('total', 'Test TOTAL');

$linea = $parada->addChild('linea');

$linea->addAttribute('numero', 'TestN');
$linea->addAttribute('destino', 'TestD');
$linea->addAttribute('minutos', 'TestM');


$linea2 = $parada->addChild('linea2');

$linea2->addAttribute('numero', 'TestN');
$linea2->addAttribute('destino', 'TestD');
$linea2->addAttribute('minutos', 'TestM');


echo $xml;          

echo $xml->asXML();

?>

しかし、私の結果はこれです:

    <xml>
         <parada nombre="Test Name" total="Test TOTAL">
             <linea numero="TestN" destino="TestD" minutos="TestM">
                 <linea2 numero="TestN" destino="TestD" minutos="TestM"/>
             </linea>
        </parada>
    </xml>

2番目の子ノード「linea2」が最初の子ノード「linea」の中にある理由がわかりません。

ありがとう。

4

1 に答える 1

0

<?xmlタグがタグではないことを忘れてしまったからです<xml>。ルートとして配置する場合<prada>は、SimpleXMLElement コンストラクターの最初の引数として配置するだけです。

$doc = new SimpleXMLElement("<prada></prada>");
于 2012-08-15T12:46:01.040 に答える