Ir para conteúdo

POWERED BY:

Arquivado

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

gremio10

[Resolvido] Acessar dados XML com ' - '

Recommended Posts

Galera , recebo um xml e uso o simplexml_load_string para le-lo.

 

ai pego minha variavel e do um var_dump nele .

 

e em alguns nós ele vem com '-' .

 

tipo :

<data-nascimento>
   <idade>18</idade>
   <ano>1992</ano>
</data-nascimento>

e alguns não tem :

 

<info>
   <nome>Felipe</nome>
   <curso>Desenvolvedor de Software</curso>
</info>

digamos que tenho a variavel $xml para ler ele.

faço assim :

 

$xml = simplexml_load_string("teste.xml");

echo $xml->info->nome; // Vai mostrar Felipe
echo $xml->info->curso; //Desenvolvedor de Software
echo $xml->data-nascimento->idade; // da erro no data'-'nascimento

como faço para pegar o valor daquele nó ?

 

Obrigado.

 

Felipe

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tipo João , eu to utilizando a variavel $DadosEnvio e quando coloco [' data-nascimento ']->idade ele nao da valor algum.

 

será que estou errando em algo ?

 

vou mandar meu codigo.

 


<?php
function curl($xml,$nome){

/**
 * Iniciando CURL
 */
 $curl = curl_init();
 
 /**
 * Verificamos se o recurso CURL foi criado com êxito
 */
 if ( is_resource( $curl ) ){
        curl_setopt( $curl , CURLOPT_HEADER , 0 );
        curl_setopt( $curl , CURLOPT_SSL_VERIFYPEER, 0);
        curl_setopt( $curl , CURLOPT_RETURNTRANSFER , 1 );
        curl_setopt( $curl , CURLOPT_FOLLOWLOCATION , 0 );
        curl_setopt( $curl , CURLOPT_URL , 'https://qasecommerce.cielo.com.br/servicos/ecommwsec.do' );
        curl_setopt( $curl , CURLOPT_POST , 1 );
        curl_setopt( $curl , CURLOPT_POSTFIELDS , http_build_query( array( 'mensagem' => $xml ) ) );
 
        $xml_captura = curl_exec( $curl ); $ern = curl_errno( $curl ); $err = curl_error( $curl );
 
        curl_close( $curl );
 
        if ( (bool) $ern ){
                echo 'Ocorreu um erro[' , $ern , ']: ' , $err;
        } else {
                //var_dump( $xml_captura , $ern , $err );
                                $DadosEnvio = simplexml_load_string($xml_captura);
								
								if ($DadosEnvio !== FALSE){
								
								
								echo $DadosEnvio['dados-pedido']->valor;
								foreach( $DadosEnvio as $c => $v ) // recupera valores
                				{
                        			$c = str_replace( array("-"), array(""), $c); //para remover os - da variavel a ser criada      
                        			$$c = $v;		
									echo $c."<br>";
                				}
								echo $DadosEnvio->tid."<br>";
								echo $DadosEnvio->autenticacao->codigo."<br>";
								echo $DadosEnvio->autorizacao->lr."<br>";
								
								
		//						suporteweb@cielo.com.br Att daniela gonçalves
								//var_dump($DadosEnvio);
								echo "<br><strong>".$nome. "</strong><br><br>";
							
								//echo $DadosEnvio->dadospedido->numero . " <br> " . $DadosEnvio->pan . "<br>";
								print_r($DadosEnvio);
								echo "<div style='border-bottom:1px solid #000'></div>";
								
								}
        }
 } else {
        echo 'erro';
 }
}
?>

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.