Jump to content
Fórum Script Brasil
  • 0

Cotação do Dolar e outros


Vinicius.Souza

Question

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

Edited by Vinicius.Souza
Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 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 to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.1k
    • Total Posts
      652k
×
×
  • Create New...