LipeLauro 0 Denunciar post Postado Março 18, 2013 Amigos, boa tarde! Estou atravessando um dilema com leitura de xml. Já busquei a solução em todo o forum e não encontrei ainda. Veja bem, tinha feito um sisteminha para ler o xml que uma empresa disponibilizou, e o webservice deles era o seguinte: <dartMetaConsulta> <consultas> <cpfCnpj>026.153.156-54</cpfCnpj> <dataContrato>2012-10-02T00:00:00-03:00</dataContrato> <nomeRazao>EMPRESA TAL</nomeRazao> Desta forma, para ler o xml, eu usava no sistema o seguinte: <?php foreach($xml->dartMetaConsulta as $consultas) { echo '<tr>'; .... (segue) Depois de um tempo, a empresa dona do xml, mudou a árvore e inseriu uma nova tag e preciso modificar o sisteminha para conseguir ler o xml. A nova árvore ficou assim: <dartMetaConsulta> <consultas> <consulta> <cpfCnpj>026.153.156-54</cpfCnpj> <dataContrato>2012-10-02T00:00:00-03:00</dataContrato> <nomeRazao>EMPRESA TAL</nomeRazao> Observem que entrou a tag <consulta> e depois disso meu sisteminha não consegue mais exibir os dados. Alguém pode me ajudar? Grande abraço a todos! Compartilhar este post Link para o post Compartilhar em outros sites
Vinicius Rangel 208 Denunciar post Postado Março 18, 2013 use o componente simple xml, é realmente simples. Compartilhar este post Link para o post Compartilhar em outros sites
LipeLauro 0 Denunciar post Postado Março 18, 2013 Mas não estou querendo gerar o xml, estou querendo ler o xml... :D Compartilhar este post Link para o post Compartilhar em outros sites
Vinicius Rangel 208 Denunciar post Postado Março 18, 2013 tudo bem, use o simples xml. http://rubsphp.blogspot.com.br/2011/02/simplexml.html Compartilhar este post Link para o post Compartilhar em outros sites
LipeLauro 0 Denunciar post Postado Maio 22, 2013 Ainda não consegui... :( Compartilhar este post Link para o post Compartilhar em outros sites
Kakashi_Hatake 267 Denunciar post Postado Maio 22, 2013 Tente utilizar a classe DOMDocument, é muito mais fácil. Exemplo: <?php $source = <<<XML <?xml version="1.0" encoding="UTF-8"?> <dartMetaConsulta> <consultas> <consulta> <cpfCnpj>026.153.156-54</cpfCnpj> <dataContrato>2012-10-02T00:00:00-03:00</dataContrato> <nomeRazao>EMPRESA TAL</nomeRazao> </consulta> <consulta> <cpfCnpj>026.133.116-59</cpfCnpj> <dataContrato>2013-10-12T00:00:00-03:00</dataContrato> <nomeRazao>EMPRESA TAL 2</nomeRazao> </consulta> </consultas> </dartMetaConsulta> XML; $DOMDocument = new DOMDocument( '1.0', 'UTF-8' ); $DOMDocument->preserveWhiteSpace = false; $DOMDocument->loadXML( $source ); $consultas = $DOMDocument->getElementsByTagName( 'consulta' ); foreach( $consultas as $consulta ) { foreach( $consulta->childNodes as $childNode ) { printf( '<strong>%s:</strong> %s<br/>', $childNode->nodeName, $childNode->nodeValue ); } echo '<hr>'; } ?> Saída cpfCnpj: 026.153.156-54 dataContrato: 2012-10-02T00:00:00-03:00 nomeRazao: EMPRESA TAL --------------------------------------------- cpfCnpj: 026.133.116-59 dataContrato: 2013-10-12T00:00:00-03:00 nomeRazao: EMPRESA TAL 2 --------------------------------------------- Compartilhar este post Link para o post Compartilhar em outros sites