Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Davidson Magalhaes

[Resolvido] Ler arquivo XML a partir do PHP

Recommended Posts

Galera, alguém poderia me ajudar na leitura do XML abaixo com o php?

 

<?xml version="1.0"?>
<!-- Generated by Oracle Reports version 6.0.8.8.3 -->
<WISEX590>
 <LIST_G_NU_ROMANEIO>
   <G_NU_ROMANEIO>
     <NU_ROMANEIO>27042</NU_ROMANEIO>
     <CD_EMPRESA>1</CD_EMPRESA>
     <CD_TRANSPORTADORA>111</CD_TRANSPORTADORA>
     <DS_TRANSPORTADORA>REMETENTE LOJA ELETRICA LTDA</DS_TRANSPORTADORA>
     <CD_PORTA>8</CD_PORTA>
     <CD_VEICULO>73</CD_VEICULO>
     <DS_VEICULO></DS_VEICULO>
     <CD_PLACA></CD_PLACA>
     <NOM_MOTORISTA>VALDIR</NOM_MOTORISTA>
     <NOM_AUXILIAR>SIDNEY</NOM_AUXILIAR>
     <DT_ADDROW>17-JUL-12</DT_ADDROW>
     <LIST_G_NU_PEDIDO>
       <G_NU_PEDIDO>
         <VL_NOTA_FISCAL>2189.47</VL_NOTA_FISCAL>
         <DS_TRANSPORTADORA_DET>REMETENTE LOJA ELETRICA L</DS_TRANSPORTADORA_DET>
         <NU_PEDIDO>51889606</NU_PEDIDO>
         <CD_CLIENTE>54210200</CD_CLIENTE>
         <NU_NOTA_FISCAL>7426</NU_NOTA_FISCAL>
         <CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>
         <DT_EMISSAO_NF>17-JUL-12</DT_EMISSAO_NF>
         <NRO_VOLUMES></NRO_VOLUMES>
         <NU_PRIORIDADE_CARGA>1</NU_PRIORIDADE_CARGA>
         <DS_CLIENTE>PATRIARCA CONST.INCORPORADORA LTDA</DS_CLIENTE>
         <CD_TRANSPORTADORA_DET>111</CD_TRANSPORTADORA_DET>
         <CF_VOLUMES>26</CF_VOLUMES>
       </G_NU_PEDIDO>
       <G_NU_PEDIDO>
         <VL_NOTA_FISCAL>1040.75</VL_NOTA_FISCAL>
         <DS_TRANSPORTADORA_DET>REMETENTE LOJA ELETRICA L</DS_TRANSPORTADORA_DET>
         <NU_PEDIDO>51545706</NU_PEDIDO>
         <CD_CLIENTE>63463300</CD_CLIENTE>
         <NU_NOTA_FISCAL>7400</NU_NOTA_FISCAL>
         <CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>
         <DT_EMISSAO_NF>17-JUL-12</DT_EMISSAO_NF>
         <NRO_VOLUMES></NRO_VOLUMES>
         <NU_PRIORIDADE_CARGA>2</NU_PRIORIDADE_CARGA>
         <DS_CLIENTE>WESLEY MARCELINO MEIRELES</DS_CLIENTE>
         <CD_TRANSPORTADORA_DET>111</CD_TRANSPORTADORA_DET>
         <CF_VOLUMES>14</CF_VOLUMES>
       </G_NU_PEDIDO>
       <G_NU_PEDIDO>
         <VL_NOTA_FISCAL>204.81</VL_NOTA_FISCAL>
         <DS_TRANSPORTADORA_DET>REMETENTE LOJA ELETRICA L</DS_TRANSPORTADORA_DET>
         <NU_PEDIDO>52293606</NU_PEDIDO>
         <CD_CLIENTE>47035300</CD_CLIENTE>
         <NU_NOTA_FISCAL>7699</NU_NOTA_FISCAL>
         <CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>
         <DT_EMISSAO_NF>17-JUL-12</DT_EMISSAO_NF>
         <NRO_VOLUMES></NRO_VOLUMES>
         <NU_PRIORIDADE_CARGA>3</NU_PRIORIDADE_CARGA>
         <DS_CLIENTE>J MACEDO CIA LTDA</DS_CLIENTE>
         <CD_TRANSPORTADORA_DET>111</CD_TRANSPORTADORA_DET>
         <CF_VOLUMES>1</CF_VOLUMES>
       </G_NU_PEDIDO>
       <G_NU_PEDIDO>
         <VL_NOTA_FISCAL>1330.83</VL_NOTA_FISCAL>
         <DS_TRANSPORTADORA_DET>REMETENTE LOJA ELETRICA L</DS_TRANSPORTADORA_DET>
         <NU_PEDIDO>51969006</NU_PEDIDO>
         <CD_CLIENTE>63488900</CD_CLIENTE>
         <NU_NOTA_FISCAL>7721</NU_NOTA_FISCAL>
         <CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>
         <DT_EMISSAO_NF>17-JUL-12</DT_EMISSAO_NF>
         <NRO_VOLUMES></NRO_VOLUMES>
         <NU_PRIORIDADE_CARGA>4</NU_PRIORIDADE_CARGA>
         <DS_CLIENTE>JESUS PINTO DE CASTRO</DS_CLIENTE>
         <CD_TRANSPORTADORA_DET>111</CD_TRANSPORTADORA_DET>
         <CF_VOLUMES>20</CF_VOLUMES>
       </G_NU_PEDIDO>
       <G_NU_PEDIDO>
         <VL_NOTA_FISCAL>1337.46</VL_NOTA_FISCAL>
         <DS_TRANSPORTADORA_DET>REMETENTE LOJA ELETRICA L</DS_TRANSPORTADORA_DET>
         <NU_PEDIDO>52122106</NU_PEDIDO>
         <CD_CLIENTE>56450300</CD_CLIENTE>
         <NU_NOTA_FISCAL>7720</NU_NOTA_FISCAL>
         <CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>
         <DT_EMISSAO_NF>17-JUL-12</DT_EMISSAO_NF>
         <NRO_VOLUMES></NRO_VOLUMES>
         <NU_PRIORIDADE_CARGA>5</NU_PRIORIDADE_CARGA>
         <DS_CLIENTE>AUDIE MURFF REIS DE SOUZA</DS_CLIENTE>
         <CD_TRANSPORTADORA_DET>111</CD_TRANSPORTADORA_DET>
         <CF_VOLUMES>13</CF_VOLUMES>
       </G_NU_PEDIDO>
       <G_NU_PEDIDO>
         <VL_NOTA_FISCAL>1043.89</VL_NOTA_FISCAL>
         <DS_TRANSPORTADORA_DET>MW TRANSPORTES LTDA</DS_TRANSPORTADORA_DET>
         <NU_PEDIDO>50424606</NU_PEDIDO>
         <CD_CLIENTE>53864300</CD_CLIENTE>
         <NU_NOTA_FISCAL>7125</NU_NOTA_FISCAL>
         <CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>
         <DT_EMISSAO_NF>17-JUL-12</DT_EMISSAO_NF>
         <NRO_VOLUMES></NRO_VOLUMES>
         <NU_PRIORIDADE_CARGA>6</NU_PRIORIDADE_CARGA>
         <DS_CLIENTE>GODIVA ALIMENTOS LTDA</DS_CLIENTE>
         <CD_TRANSPORTADORA_DET>99</CD_TRANSPORTADORA_DET>
         <CF_VOLUMES>6</CF_VOLUMES>
       </G_NU_PEDIDO>
       <G_NU_PEDIDO>
         <VL_NOTA_FISCAL>451.6</VL_NOTA_FISCAL>
         <DS_TRANSPORTADORA_DET>REMETENTE LOJA ELETRICA L</DS_TRANSPORTADORA_DET>
         <NU_PEDIDO>51936706</NU_PEDIDO>
         <CD_CLIENTE>57406900</CD_CLIENTE>
         <NU_NOTA_FISCAL>7427</NU_NOTA_FISCAL>
         <CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>
         <DT_EMISSAO_NF>17-JUL-12</DT_EMISSAO_NF>
         <NRO_VOLUMES></NRO_VOLUMES>
         <NU_PRIORIDADE_CARGA>7</NU_PRIORIDADE_CARGA>
         <DS_CLIENTE>ELI RIBEIRO DA SILVA</DS_CLIENTE>
         <CD_TRANSPORTADORA_DET>111</CD_TRANSPORTADORA_DET>
         <CF_VOLUMES>9</CF_VOLUMES>
       </G_NU_PEDIDO>
       <G_NU_PEDIDO>
         <VL_NOTA_FISCAL>1150.56</VL_NOTA_FISCAL>
         <DS_TRANSPORTADORA_DET>REMETENTE LOJA ELETRICA L</DS_TRANSPORTADORA_DET>
         <NU_PEDIDO>84731306</NU_PEDIDO>
         <CD_CLIENTE>10001600</CD_CLIENTE>
         <NU_NOTA_FISCAL>7759</NU_NOTA_FISCAL>
         <CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>
         <DT_EMISSAO_NF>17-JUL-12</DT_EMISSAO_NF>
         <NRO_VOLUMES></NRO_VOLUMES>
         <NU_PRIORIDADE_CARGA>8</NU_PRIORIDADE_CARGA>
         <DS_CLIENTE>ROCA BRASIL LTDA</DS_CLIENTE>
         <CD_TRANSPORTADORA_DET>111</CD_TRANSPORTADORA_DET>
         <CF_VOLUMES>3</CF_VOLUMES>
       </G_NU_PEDIDO>
       <G_NU_PEDIDO>
         <VL_NOTA_FISCAL>73.05</VL_NOTA_FISCAL>
         <DS_TRANSPORTADORA_DET>REMETENTE LOJA ELETRICA L</DS_TRANSPORTADORA_DET>
         <NU_PEDIDO>52371206</NU_PEDIDO>
         <CD_CLIENTE>49482805</CD_CLIENTE>
         <NU_NOTA_FISCAL>7747</NU_NOTA_FISCAL>
         <CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>
         <DT_EMISSAO_NF>17-JUL-12</DT_EMISSAO_NF>
         <NRO_VOLUMES></NRO_VOLUMES>
         <NU_PRIORIDADE_CARGA>9</NU_PRIORIDADE_CARGA>
         <DS_CLIENTE>COND EDIF VIA CLUBE RESIDENCE</DS_CLIENTE>
         <CD_TRANSPORTADORA_DET>111</CD_TRANSPORTADORA_DET>
         <CF_VOLUMES>1</CF_VOLUMES>
       </G_NU_PEDIDO>
       <G_NU_PEDIDO>
         <VL_NOTA_FISCAL>73.9</VL_NOTA_FISCAL>
         <DS_TRANSPORTADORA_DET>REMETENTE LOJA ELETRICA L</DS_TRANSPORTADORA_DET>
         <NU_PEDIDO>52306006</NU_PEDIDO>
         <CD_CLIENTE>1072900</CD_CLIENTE>
         <NU_NOTA_FISCAL>7742</NU_NOTA_FISCAL>
         <CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>
         <DT_EMISSAO_NF>17-JUL-12</DT_EMISSAO_NF>
         <NRO_VOLUMES></NRO_VOLUMES>
         <NU_PRIORIDADE_CARGA>10</NU_PRIORIDADE_CARGA>
         <DS_CLIENTE>LOJA ELETRO BONFIM LTDA</DS_CLIENTE>
         <CD_TRANSPORTADORA_DET>111</CD_TRANSPORTADORA_DET>
         <CF_VOLUMES>1</CF_VOLUMES>
       </G_NU_PEDIDO>
       <G_NU_PEDIDO>
         <VL_NOTA_FISCAL>341</VL_NOTA_FISCAL>
         <DS_TRANSPORTADORA_DET>REMETENTE LOJA ELETRICA L</DS_TRANSPORTADORA_DET>
         <NU_PEDIDO>47098506</NU_PEDIDO>
         <CD_CLIENTE>53833700</CD_CLIENTE>
         <NU_NOTA_FISCAL>7430</NU_NOTA_FISCAL>
         <CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>
         <DT_EMISSAO_NF>17-JUL-12</DT_EMISSAO_NF>
         <NRO_VOLUMES></NRO_VOLUMES>
         <NU_PRIORIDADE_CARGA>11</NU_PRIORIDADE_CARGA>
         <DS_CLIENTE>LUIZ ROBERTO GOMES COSTA</DS_CLIENTE>
         <CD_TRANSPORTADORA_DET>111</CD_TRANSPORTADORA_DET>
         <CF_VOLUMES>2</CF_VOLUMES>
       </G_NU_PEDIDO>
       <G_NU_PEDIDO>
         <VL_NOTA_FISCAL>3566.8</VL_NOTA_FISCAL>
         <DS_TRANSPORTADORA_DET>REMETENTE LOJA ELETRICA L</DS_TRANSPORTADORA_DET>
         <NU_PEDIDO>52100606</NU_PEDIDO>
         <CD_CLIENTE>30197100</CD_CLIENTE>
         <NU_NOTA_FISCAL>7456</NU_NOTA_FISCAL>
         <CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>
         <DT_EMISSAO_NF>17-JUL-12</DT_EMISSAO_NF>
         <NRO_VOLUMES></NRO_VOLUMES>
         <NU_PRIORIDADE_CARGA>12</NU_PRIORIDADE_CARGA>
         <DS_CLIENTE>TAIKO TECNICA LTDA</DS_CLIENTE>
         <CD_TRANSPORTADORA_DET>111</CD_TRANSPORTADORA_DET>
         <CF_VOLUMES>6</CF_VOLUMES>
       </G_NU_PEDIDO>
       <G_NU_PEDIDO>
         <VL_NOTA_FISCAL>201.54</VL_NOTA_FISCAL>
         <DS_TRANSPORTADORA_DET>MW TRANSPORTES LTDA</DS_TRANSPORTADORA_DET>
         <NU_PEDIDO>52001206</NU_PEDIDO>
         <CD_CLIENTE>63470800</CD_CLIENTE>
         <NU_NOTA_FISCAL>7258</NU_NOTA_FISCAL>
         <CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>
         <DT_EMISSAO_NF>17-JUL-12</DT_EMISSAO_NF>
         <NRO_VOLUMES></NRO_VOLUMES>
         <NU_PRIORIDADE_CARGA>13</NU_PRIORIDADE_CARGA>
         <DS_CLIENTE>MACHADO ENGENHARIA LTDA ME</DS_CLIENTE>
         <CD_TRANSPORTADORA_DET>99</CD_TRANSPORTADORA_DET>
         <CF_VOLUMES>1</CF_VOLUMES>
       </G_NU_PEDIDO>
       <G_NU_PEDIDO>
         <VL_NOTA_FISCAL>2800</VL_NOTA_FISCAL>
         <DS_TRANSPORTADORA_DET>REMETENTE LOJA ELETRICA L</DS_TRANSPORTADORA_DET>
         <NU_PEDIDO>51534106</NU_PEDIDO>
         <CD_CLIENTE>53261400</CD_CLIENTE>
         <NU_NOTA_FISCAL>7361</NU_NOTA_FISCAL>
         <CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>
         <DT_EMISSAO_NF>17-JUL-12</DT_EMISSAO_NF>
         <NRO_VOLUMES></NRO_VOLUMES>
         <NU_PRIORIDADE_CARGA>14</NU_PRIORIDADE_CARGA>
         <DS_CLIENTE>SAO RAFAEL INSTALACOES ELETRICAS LTDA</DS_CLIENTE>
         <CD_TRANSPORTADORA_DET>111</CD_TRANSPORTADORA_DET>
         <CF_VOLUMES>12</CF_VOLUMES>
       </G_NU_PEDIDO>
     </LIST_G_NU_PEDIDO>
     <SUMNRO_VOLUMESPERNU_ROMANEIO>115</SUMNRO_VOLUMESPERNU_ROMANEIO>
   </G_NU_ROMANEIO>
 </LIST_G_NU_ROMANEIO>
 <SUMNRO_VOLUMESPERREPORT></SUMNRO_VOLUMESPERREPORT>
</WISEX590>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quelipe, esse xml tem um "cabeçalho" que tem algumas informações, começando em "<G_NU_ROMANEIO>" e termina em "</G_NU_ROMANEIO>", e em baixo desse "cabeçalho" começa os dados que estão entre "<G_NU_PEDIDO>" e "</G_NU_PEDIDO>"

 

Preciso somente dos dados de

 

<NU_ROMANEIO>27042</NU_ROMANEIO>

<DS_TRANSPORTADORA>REMETENTE LOJA ELETRICA LTDA</DS_TRANSPORTADORA>

<CD_VEICULO>73</CD_VEICULO>

<NOM_MOTORISTA>VALDIR</NOM_MOTORISTA>

<NOM_AUXILIAR>SIDNEY</NOM_AUXILIAR>

 

que estao no "cabeçalho" e os dados

 

<VL_NOTA_FISCAL>2189.47</VL_NOTA_FISCAL>

<DS_TRANSPORTADORA_DET>REMETENTE LOJA ELETRICA L</DS_TRANSPORTADORA_DET>

<NU_PEDIDO>51889606</NU_PEDIDO>

<CD_CLIENTE>54210200</CD_CLIENTE>

<NU_NOTA_FISCAL>7426</NU_NOTA_FISCAL>

<CD_SERIE_NOTA_FISCAL>001</CD_SERIE_NOTA_FISCAL>

<CD_TRANSPORTADORA_DET>111</CD_TRANSPORTADORA_DET>

<CF_VOLUMES>26</CF_VOLUMES>

 

que estao entre o "<G_NU_PEDIDO>"

 

Poderia me ajudar nisso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Siga esse raciocínio:

<?php
$xml = simplexml_load_file($seu_arquivo);


echo $xml->LIST_G_NU_ROMANEIO->G_NU_ROMANEIO->NU_ROMANEIO;
echo $xml->LIST_G_NU_ROMANEIO->G_NU_ROMANEIO->DS_TRANSPORTADORA;


foreach($xml->LIST_G_NU_PEDIDO->G_NU_PEDIDO as $dadosPedido) {

	echo $dadosPedido->VL_NOTA_FISCAL;
	echo $dadosPedido->DS_TRANSPORTADORA_DET;
	echo $dadosPedido->NU_PEDIDO;
}
?>

 

É so navegar entre os nós.

 

At+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara a primeira parte funcionou beleza!

 

echo $xml->LIST_G_NU_ROMANEIO->G_NU_ROMANEIO->NU_ROMANEIO;

echo $xml->LIST_G_NU_ROMANEIO->G_NU_ROMANEIO->DS_TRANSPORTADORA;

 

Já dentro do foreach nao esta me retornando nada... o que pode ser?

 

Abraço

 

Amigo ja descobri .

 

No foreach tenho que colocar desde o começo do xml

 

foreach($xml->LIST_G_NU_ROMANEIO->G_NU_ROMANEIO->LIST_G_NU_PEDIDO->G_NU_PEDIDO as $dadosPedido)

 

 

Ai sim funciona...

 

Muito obrigado cara

 

Até +

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.