Autor Tópico: Resolvido: Pegar dados de um XML  (Lida 90 vezes)

adriano_cirino

  • Novato
  • *
  • Mensagens: 25
    • Email
Resolvido: Pegar dados de um XML
« Online: Janeiro 31, 2019, 09:15:04 pm »
Como posso pegar o campo   <code>101</code>  do xml abaixo meus amigo consigo pegar somente  status assim mais o paymentmethod code não conseguir ! veja como estou fazendo aqui:

$xml = simplexml_load_file($retornopagseguro);

 
// Exibe as informações do XML
{payment_status} =  $xml->status ;
{payment_code} =$xml->paymentmethod->code; // assim não esta vindo o codigo ou seja ta errado




-----------------------------------arquivo xml -------------------------------------------
<!--?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?--> 
<transaction> 
    <date>2011-02-10T16:13:41.000-03:00</date> 
    <code>9E884542-81B3-4419-9A75-BCC6FB495EF1</code> 
    <reference>REF1234</reference> 
    <type>1</type> 
    <status>3</status> 
    <lasteventdate>2011-02-15T17:39:14.000-03:00</lasteventdate> 
    <paymentmethod> 
        <type>1</type> 
        <code>101</code> 
    </paymentmethod> 
    <grossamount>49900.00</grossamount> 
    <discountamount>0.00</discountamount> 
    <feeamount>0.00</feeamount> 
    <netamount>49900.00</netamount> 
    <extraamount>0.00</extraamount> 
    <installmentcount>1</installmentcount> 
« Última modificação: Fevereiro 01, 2019, 11:51:43 am por adriano_cirino »

Haroldo

  • Expert
  • *****
  • Mensagens: 8885
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Pegar dados de um XML
« Responder #1 Online: Janeiro 31, 2019, 09:26:26 pm »
Execute um var_dump no $xml

adriano_cirino

  • Novato
  • *
  • Mensagens: 25
    • Email
Re:Pegar dados de um XML
« Responder #2 Online: Fevereiro 01, 2019, 11:43:48 am »
Olha Haroldo a resposta do comando citado:

object(SimpleXMLElement)#5 (18) { ["date"]=> string(29) "2019-01-31T10:35:52.000-02:00" ["code"]=> string(36) "05BBB698-44FE-4FF6-83B2-B2B158CFC38B" ["type"]=> string(1) "1" ["status"]=> string(1) "3" ["lastEventDate"]=> string(29) "2019-01-31T10:37:40.000-02:00" ["paymentMethod"]=> object(SimpleXMLElement)#7 (2) { ["type"]=> string(1) "1" ["code"]=> string(3) "102" } ["grossAmount"]=> string(5) "59.99" ["discountAmount"]=> string(4) "0.00" ["creditorFees"]=> object(SimpleXMLElement)#9 (3) { ["installmentFeeAmount"]=> string(4) "2.59" ["intermediationRateAmount"]=> string(4) "0.40" ["intermediationFeeAmount"]=> string(4) "2.99" } ["netAmount"]=> string(5) "54.01" ["extraAmount"]=> string(4) "0.00" ["escrowEndDate"]=> string(29) "2019-02-14T01:00:00.000-02:00" ["installmentCount"]=> string(1) "2" ["itemCount"]=> string(1) "1" ["items"]=> object(SimpleXMLElement)#11 (1) { ["item"]=> object(SimpleXMLElement)#17 (4) { ["id"]=> string(5) "19011" ["description"]=> string(23) "Ac Os -Estoque - Vendas" ["quantity"]=> string(1) "1" ["amount"]=> string(5) "59.99" } } ["sender"]=> object(SimpleXMLElement)#12 (3) { ["name"]=> string(6) "PSINFO" ["email"]=> string(23) "psasuporte@yahoo.com.br" ["phone"]=> object(SimpleXMLElement)#17 (2) { ["areaCode"]=> string(2) "75" ["number"]=> string(8) "32762672" } } ["shipping"]=> object(SimpleXMLElement)#13 (3) { ["address"]=> object(SimpleXMLElement)#17 (8) { ["street"]=> string(26) "1 Travessa Hildete Lomanto" ["number"]=> string(3) "140" ["complement"]=> string(4) "Casa" ["district"]=> string(10) "Zona Norte" ["city"]=> string(17) "RIBEIRA DO POMBAL" ["state"]=> string(2) "BA" ["country"]=> string(3) "BRA" ["postalCode"]=> string(8) "48400000" } ["type"]=> string(1) "3" ["cost"]=> string(4) "0.00" } ["primaryReceiver"]=> object(SimpleXMLElement)#15 (1) { ["publicKey"]=> string(35) "PUBE3BCEC6726A043FCAF931F2794036F95" } }

adriano_cirino

  • Novato
  • *
  • Mensagens: 25
    • Email
Re:Pegar dados de um XML
« Responder #3 Online: Fevereiro 01, 2019, 11:50:47 am »
Conseguir o que queria agora fazendo assim:

// Transformando arquivo XML emObjeto
$xml = simplexml_load_file($retornopagseguro);
//$xml = simplexml_load_string($retornopagseguro);
 
// Exibe as informações do XML
//{payment_status} =  $xml->status ;
echo $xml->status.'<br>';
echo $xml->paymentMethod->code.'<br>';


Obrigado Haroldo mais uma vez.