将新节点添加到 xml 字符串


Adding new node to an xml string

$result = "<QRYRESULT>
           <ISSUCCESS>Y</ISSUCCESS>
           <TRN_REF>2498297295729857927</TRN_REF>
           <WARNING>IF ANY WARNING</WARNING>
           </QRYRESULT>";

这是我正在使用的 XML 字符串。 现在我必须向这个字符串添加一个新节点(而不是文件)。也就是说,添加新节点后,XML 字符串将如下所示。我正在从变量中的另一个系统获取此 XML 字符串,因此手动修改字符串不是一种选择。

$result = "<QRYRESULT>
           <ISSUCCESS>Y</ISSUCCESS>
           <TOKEN>some token</TOKEN>
           <TRN_REF>2498297295729857927</TRN_REF>
           <WARNING>IF ANY WARNING</WARNING>
           </QRYRESULT>";

我该怎么做??

使用例如。 simplexml

$xml = new SimpleXMLElement($yourstring);
$xml->addChild('node_name', 'node_value');
echo $xml->asXML();
不使用

XML 和一致性检查的变体:

$result=str_replace("</ISSUCCESS>","</ISSUCCESS><TOKEN>some token</TOKEN>",$result);