将 xml 节点附加到 php 中的另一个节点内

我想在节点内插入不同的节点。但我不知道如何动态地做到这一点


我有这个 xml 文件:


<?xml version='1.0'  encoding='UTF-8'?>

<article artId="4686453" artName="UHOPI20190218-012A" Author="" Comment="" PubDate="2019-02-18" Section="country">

 <head>

    <headline>this is the title </headline>

    <summary>

        autor name @twitter

    </summary>

  </head>

 <body>

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer venenatis eleifend dui, at egestas sapien lobortis viverra.

<!-- insert pullquotes here -->

  </body>

<pullquote title="" catsList="" summary="" notes="" sectionColor="" sectionHead="">

    Lorem ipsum dolor sit amet

    <summary xml:space="preserve">Lorem ipsum dolor sit amet, consectetur adipiscing elit.

    </summary>

  </pullquote>

<pullquote title="" catsList="" summary="" notes="" sectionColor="" sectionHead="">

    <headline xml:space="preserve">Some text</headline>

    <summary xml:space="preserve">Some text</summary>

    <summary xml:space="preserve">Some text</summary>

</pullquote>

</article>

我试试这个……但它不起作用


$xml = simplexml_load_file("files/test2.xml");

$body = $xml->body;

$pull1 = $xml->pullquote[0];

$body->addChild($pull1);

我想在节点内插入每个节点我该怎么做?


SMILET
浏览 112回答 1
1回答

UYOU

这是我的解决方案:if($xmlData->body){&nbsp; &nbsp; $xmlIterator = new SimpleXMLIterator($xmlData->body->asXML());&nbsp; &nbsp; $xmlIterator->rewind();&nbsp; &nbsp; $txtBody = "";&nbsp; &nbsp; for($i=0; $i < ($xmlIterator->count()); $i++){&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $txtBody .= (trim($xmlIterator->current()) <> '') ? "<p>".trim($xmlIterator->current())."</p>" : "";&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $xmlIterator->next();&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; #INSERT PULLQUOTE&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach($xmlData->pullquote as $pull){&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $txtBody .= $pull;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach ($pull->children() as $child){&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $txtBody .= $child;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $data = $txtBody;}
打开App,查看更多内容
随时随地看视频慕课网APP