PHP SimpleXML格式不正确

时间:2017-02-28 12:45:07

标签: php simplexml

<?xml version="1.0" encoding="ISO-8859-1" ?>
<Servicos>
 <cServico>
  <Codigo>40010</Codigo>
 </cServico>
</Servicos>

<?xml version="1.0" encoding="ISO-8859-1" ?>
<Servicos>
 <cServico>
  <Codigo>40010</Codigo>
 </cServico>
 <cServico>
  <Codigo>40011</Codigo>
 </cServico>
</Servicos>

SimpleXMLElement在下面的两个XML中的工作方式不同

 $object = new \SimpleXMLElement($xml);

在第一种情况下,它只是忽略了xml节点&#34; Servicos&#34;直接带来&#34; cServico&#34;节点已经在第二个xml中,因为有多个&#34; cServico&#34;它带来的节点是否正确,有没有办法解决这个问题

1 个答案:

答案 0 :(得分:0)

您忘记分享需要修复的代码,但作为一般提示,您在使用SimpleXML时不需要使用顶级节点:

$codes = array();
foreach ($xml->cServico as $item) {
    $codes[] = (string)$item->Codigo;
}

Online demo

相关问题