将XML文档从php传递到c#

本文关键字:php XML 文档 | 更新日期: 2023-09-27 18:09:28

我需要从PHP传递以下xml文档到我的c# dll .此外,我只需要传递元素watchlists及其子元素。它是一个DOMDocument

<assumption_list>
<assumption name="test" id="23" description="test1" is_shared="no">
<watchlists>
<watchlist globalissuer="k" prepayrate="" prepaytype="CPR" defaultrate="" defaulttype="CDR" lossrate="" lagmonths=""/>
</watchlists>
</assumption>
</assumption_list>

1:我应该把这个xml文档转换成字符串,然后传递给c# dll,如果是应该有任何PHP函数,像c#的xmldoc.tostring()

2:我如何从这个xml文档中获取watchlists元素。我试过使用这个代码。

$watchlists = $xmlDoc->getElementsByTagName('watchlists');

如果这是正确的方式,那么我如何将这个节点传递给c#,我应该将它转换为字符串还是直接传递这个xml节点。

将XML文档从php传递到c#

我认为没有SimpleXML::getElementsByTagName()

这应该是你想要的:

$result = $xml->xpath('/assumption_list/assumption/watchlists');
foreach($result as $node)
    echo $node->asXML();


编辑:

您编辑了您的问题并将SimpleXML更改为DOMDocument

$result = $dom->getElementsByTagName('watchlists');
foreach($result as $element)
    echo $dom->saveXML($element);