Ir para conteúdo
Fórum Script Brasil
  • 0

Cotação do Dolar e outros


Vinicius.Souza

Pergunta

Olá Pessoal desenvolvi uma função que retorna a cotação detalhada (como preço de compra, preço de venda e taxa de variação) das seguinte moedas:

- Dólar Comercial

- Dólar Turismo

- Dólar Paralelo

- Euro

- Libra

- Peso arg.

segue o código:

function eCotafacil(){
    $saida = array();
    
    libxml_use_internal_errors( TRUE );
    
    $file = file_get_contents( 'http://economia.uol.com.br/cotacoes/' );
    $file = strtr( $file, array( 'th'=>'td', '(em R$)'=>'' ) );
    
    $DOM  = new DOMDocument();
    $DOM -> loadHTML( $file );
    
    $dados = $DOM->getElementsByTagName( 'td' );
    
    for( $i=37; $i<60; $i++ ){
        if($i == 37 || $i == 41 || $i == 45 || $i == 49 || $i == 53 || $i == 57){
            
            $arrAux = array('tipo'=>utf8_decode( $dados->item($i)->nodeValue ),    'compra'=>utf8_decode( $dados->item($i+1)->nodeValue ), 'venda'=>utf8_decode( $dados->item($i+2)->nodeValue ), 'variacao'=>utf8_decode( $dados->item($i+3)->nodeValue ) );    
        
            array_push( $saida, (object)$arrAux );    
        }
    }
    
    return $saida;
}
A forma de usar é simples, você pode usar a chamada direta ou usar um laço for para montar uma tabela html com os dados, a função retornar um array com um obj com os dados de cada moeda, as propriedades do obj retornado são: tipo, compra, venda e variacao que correspondem a dolar euro ou libra..., valor de compra em REAIS R$ [bRL], valor de venda em REAIS R$ [bRL], e porcentagem da taxa de variação do câmbio respectivamente. ex: chamada direta (cada indice do array corresponda a um tipo de moeda);
$minhaCotacao = eCotafacil();
echo $minhaCotacao[0]->tipo . '<br />';
echo $minhaCotacao[0]->compra . '<br />';
echo $minhaCotacao[0]->venda . '<br />';
echo $minhaCotacao[0]->variacao . '<br />';
ex: chama dentro de um laço for
$minhaCotacao = eCotafacil();
for($i=0; $i<count($minhaCotacao); $i++){

echo $minhaCotacao[$i]->tipo . '<br />';
echo $minhaCotacao[$i]->compra . '<br />';
echo $minhaCotacao[$i]->venda . '<br />';
echo $minhaCotacao[$i]->variacao . '<br />';
echo '--------------------------------------------------<br />';
}

Não esqueça ao exibir a cotação em seu site ou blog de citar o site UOL Economia com fonte de suas cotações, pois é de onde o script retira os dados.

Postem os resultados ae...

[]'s

Editado por Vinicius.Souza
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Ótimo script, mas não está mais funcionando.

Será que tem como atualizar os indices. Parece que o UOL alterou os nomes dos campos, pois os resultados mostram outros itens

Eu tb testei e não funcionou ... só exibiu estas palavras:

Veja outros indicadores

Venda

Varia��o

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...