0

I'm trying to get data from a XML file in PHP using simpleXML, but I constantly get the error 'simplexml trying to get property of non-object' when I try to read it. This is the XML file I'm using:


  <?xml version="1.0" encoding="UTF-8" ?> 
- <cteProc versao="3.00" xmlns="http://www.portalfiscal.inf.br/cte">
- <CTe xmlns="http://www.portalfiscal.inf.br/cte">
- <infCte versao="3.00" Id="CTe35191103408053000134570050000004561000426290">
- <ide>
  <cUF>35</cUF> 
  <cCT>00042629</cCT> 
  <CFOP>6932</CFOP> 
  <natOp>TRANSP INICIADO UF DIVERSA DO PRESTADOR</natOp> 
  <mod>57</mod> 
  <serie>5</serie> 
  <nCT>456</nCT> 
  <dhEmi>2019-11-06T15:02:53-03:00</dhEmi> 
  <tpImp>1</tpImp> 
  <tpEmis>1</tpEmis> 
  <cDV>0</cDV> 
  <tpAmb>1</tpAmb> 
  <tpCTe>0</tpCTe> 
  <procEmi>0</procEmi> 
  <verProc>Bsoft 3.01.0.0716</verProc> 
  <cMunEnv>3502754</cMunEnv> 
  <xMunEnv>Aracariguama</xMunEnv> 
  <UFEnv>SP</UFEnv> 
  <modal>01</modal> 
  <tpServ>0</tpServ> 
  <cMunIni>1506500</cMunIni> 
  <xMunIni>Santa Isabel do Para</xMunIni> 
  <UFIni>PA</UFIni> 
  <cMunFim>3106200</cMunFim> 
  <xMunFim>Belo Horizonte</xMunFim> 
  <UFFim>MG</UFFim> 
  <retira>1</retira> 
  <indIEToma>1</indIEToma> 
- <toma3>
  <toma>3</toma> 
  </toma3>
  </ide>
- <compl>
  <xCaracAd>Normal</xCaracAd> 
- <Entrega>
- <semData>
  <tpPer>0</tpPer> 
  </semData>
- <semHora>
  <tpHor>0</tpHor> 
  </semHora>
  </Entrega>
  <xObs>;Observacao do Pagador: ;Nota Fiscal: 93</xObs> 
  </compl>
- <emit>
  <CNPJ>03408053000134</CNPJ> 
  <IE>734062539116</IE> 
  <xNome>M G TRANSPORTES E LOCACAO LTDA EPP</xNome> 
  <xFant>M G TRANSPORTES E LOCACAO LTDA EPP</xFant> 
- <enderEmit>
  <xLgr>R. DR. RUBEN DARIO ALMONACID</xLgr> 
  <nro>177</nro> 
  <xBairro>RONDA</xBairro> 
  <cMun>3502754</cMun> 
  <xMun>Aracariguama</xMun> 
  <CEP>18147000</CEP> 
  <UF>SP</UF> 
  <fone>1142048800</fone> 
  </enderEmit>
  </emit>
- <rem>
  <CNPJ>30684804000118</CNPJ> 
  <IE>156065827</IE> 
  <xNome>PURO SABOR COM E DISTRI DE POLPAS DE FRUTAS EIRELI</xNome> 
  <xFant>ACAI PURO SABOR</xFant> 
- <enderReme>
  <xLgr>AV PEDRO CONSTANTINO</xLgr> 
  <nro>1387</nro> 
  <xBairro>CENTRO</xBairro> 
  <cMun>1506500</cMun> 
  <xMun>Santa Isabel do Para</xMun> 
  <CEP>68790000</CEP> 
  <UF>PA</UF> 
  <cPais>1058</cPais> 
  <xPais>Brasil</xPais> 
  </enderReme>
  </rem>
- <dest>
  <CNPJ>23149412000193</CNPJ> 
  <IE>0625428900040</IE> 
  <xNome>ORGANIZACAO FERRAZ LTDA - ME</xNome> 
  <fone>3133832649</fone> 
- <enderDest>
  <xLgr>R AMANDA</xLgr> 
  <nro>165</nro> 
  <xBairro>BETANIA</xBairro> 
  <cMun>3106200</cMun> 
  <xMun>Belo Horizonte</xMun> 
  <CEP>30580500</CEP> 
  <UF>MG</UF> 
  <cPais>1058</cPais> 
  <xPais>Brasil</xPais> 
  </enderDest>
  </dest>
- <vPrest>
  <vTPrest>4000.00</vTPrest> 
  <vRec>4000.00</vRec> 
- <Comp>
  <xNome>Frete Valor</xNome> 
  <vComp>4000.00</vComp> 
  </Comp>
  </vPrest>
- <imp>
- <ICMS>
- <ICMSOutraUF>
  <CST>90</CST> 
  <vBCOutraUF>0.00</vBCOutraUF> 
  <pICMSOutraUF>0.00</pICMSOutraUF> 
  <vICMSOutraUF>0.00</vICMSOutraUF> 
  </ICMSOutraUF>
  </ICMS>
  </imp>
- <infCTeNorm>
- <infCarga>
  <vCarga>49000.00</vCarga> 
  <proPred>ACAI POPULAR</proPred> 
  <xOutCat>FARDOS</xOutCat> 
- <infQ>
  <cUnid>01</cUnid> 
  <tpMed>PESO</tpMed> 
  <qCarga>14.2800</qCarga> 
  </infQ>
- <infQ>
  <cUnid>03</cUnid> 
  <tpMed>VOLUMES</tpMed> 
  <qCarga>350.0000</qCarga> 
  </infQ>
  <vCargaAverb>49000.00</vCargaAverb> 
  </infCarga>
- <infDoc>
- <infNFe>
  <chave>15191130684804000118550010000000931251541070</chave> 
  <dPrev>2019-11-07</dPrev> 
  </infNFe>
  </infDoc>
- <infModal versaoModal="3.00">
- <rodo>
  <RNTRC>01675415</RNTRC> 
  </rodo>
  </infModal>
  </infCTeNorm>
- <autXML>
  <CNPJ>08117647000100</CNPJ> 
  </autXML>
  </infCte>
- <infCTeSupl>
- <qrCodCTe>
- <![CDATA[ https://nfe.fazenda.sp.gov.br/CTeConsulta/qrCode?chCTe=35191103408053000134570050000004561000426290&tpAmb=1
  ]]> 
  </qrCodCTe>
  </infCTeSupl>
- <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
- <SignedInfo>
  <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /> 
  <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" /> 
- <Reference URI="#CTe35191103408053000134570050000004561000426290">
- <Transforms>
  <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /> 
  <Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /> 
  </Transforms>
  <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /> 
  <DigestValue>x/LIWXdM2mO7su2aj+wtnlkv4LI=</DigestValue> 
  </Reference>
  </SignedInfo>
  <SignatureValue>exLyo9adG1pYkmSIKJ5W9bbYp6rx7eDWb5JlrdQMBBrvF3XtQ6Xq2Lsy9Y4Ii8wBIyNpA6h10Y6kTOiHTNXHeYxuBAbYlzx37nU7FM/dSjVD3y9+myuJwJOfRO0cZdoTnmdBIY9fR1vJYytd91EOXxd2Kngnn182hRcct3NAa+vjLh0ZM0E10cT9g4w36gA30n0cLrIQ4LzpvDstm0/L51RBMocX6Y7SfH289qQmyP7Xi8OT9arFB80nGVGK9xYwGGx1+R45wqlKcr26puPXQu1bfXauOfu8x1PSJwBToeyp6C3AivsDuprMIN8SO7HaTCRnwBlF34VStYI69iDNTA==</SignatureValue> 
- <KeyInfo>
- <X509Data>
  <X509Certificate>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</X509Certificate> 
  </X509Data>
  </KeyInfo>
  </Signature>
  </CTe>
- <protCTe versao="3.00">
- <infProt>
  <tpAmb>1</tpAmb> 
  <verAplic>SP-CTe-08-10-2019</verAplic> 
  <chCTe>35191103408053000134570050000004561000426290</chCTe> 
  <dhRecbto>2019-11-06T16:09:38-03:00</dhRecbto> 
  <nProt>135191641022356</nProt> 
  <digVal>x/LIWXdM2mO7su2aj+wtnlkv4LI=</digVal> 
  <cStat>100</cStat> 
  <xMotivo>Autorizado o uso do CT-e</xMotivo> 
  </infProt>
  </protCTe>
  </cteProc>

I tried, for example, getting the value of CNPJ surrounded by just under the tag, using $cnpj = $xmldata->cteProc->CTe->infCte->emit but to no success. Sorry, I'm kinda new to PHP and not sure where I'm going wrong, thanks

rypdamyst
  • 11
  • 2
  • Possible duplicate of [How do you parse and process HTML/XML in PHP?](https://stackoverflow.com/questions/3577641/how-do-you-parse-and-process-html-xml-in-php) – miken32 Nov 09 '19 at 16:44

1 Answers1

0

simplexml_load_[string|file]() will consume the wrapper tag, in your case the cteProc tag.

This means that you don't need to look inside that object to access the other objects within.

To get to CNPJ, it would look like:

$cnpj = $xmldata->CTe->infCte->emit->CNPJ;

Samuel Cook
  • 16,620
  • 7
  • 50
  • 62