PHP DOMDocument adding child xml feed


PHP DOMDocument adding child xml feed

如果希望xml这样做:

    <itunes:owner>
        <itunes:name>Name</itunes:name>
        <itunes:email>email</itunes:email>
    </itunes:owner>

此代码不起作用。 nameemail不在owner标记之间。

相反,它正在这样做:

    <itunes:owner> </itunes:owner>
    <itunes:name>Name</itunes:name>
    <itunes:email>email</itunes:email>

此 PHP 代码不起作用。 nameemail不在owner标记之间。

$xml = new DOMDocument("1.0","UTF-8");
 ...
    $chan->appendChild($xml->createElement('itunes:owner', 'ame'));
    $chanow = $chan->appendChild($xml->createElement('itunes:name', 'Name'));
    $chanow = $chan->appendChild($xml->createElement('itunes:email', 'email'));

那么如何添加子元素呢?

对不起,这是我第一次体验DOMDocument

您正在尝试将孩子附加到错误的父级。

$chan->appendChild($xml->createElement('itunes:owner', 'ame'));

试试这个:

$xml->formatOutput = true; //better readability
$chan = $xml->appendChild($xml->createElement('itunes:owner'));
$chanow = $chan->appendChild($xml->createElement('itunes:name', 'Name'));
$chanow = $chan->appendChild($xml->createElement('itunes:email', 'email'));
echo $xml->saveXML(); //displaying the output

这应生成以下输出:

<itunes:owner>
  <itunes:name>Name</itunes:name>
  <itunes:email>email</itunes:email>
</itunes:owner>

演示!