Pular para o conteúdo

Cotação do Dólar

Script usado para capturar os valores da cotação atual do dólar junto ao site do Banco Central. Muito
útil para quem deseja calcular preços de produtos baseados em dólar ou até mesmo mostrar a cotação
em seu site.
Fábio Berbert de Paula fabio
Hits: 45.595 Categoria: PHP Subcategoria: Internet
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Script usado para capturar os valores da cotação atual do dólar junto ao site do Banco Central. Muito
útil para quem deseja calcular preços de produtos baseados em dólar ou até mesmo mostrar a cotação
em seu site.
Download cotacaoDolar.zip Enviar nova versão

Versões atualizadas deste script

Esconder código-fonte

<?
/*
  cotacaoDolar.php - script usado para extrair a cotação atual do dólar junto ao 
  banco central do governo federal

  Autor: Fábio Berbert de Paula <fabio@vivaolinux.com.br>
  http://www.vivaolinux.com.br
*/

error_reporting(15);

// o fopen também funciona para arquivos da rede, uau !
if(!$fp=fopen("http://www.bc.gov.br/htms/infecon/taxas/taxas.htm" ,"r" )) { 
    echo "Erro ao abrir a página de cotação" ; 
    exit ;
} 
   
$conteudo = '';
while(!feof($fp)) { // leia o conteúdo da página
   $conteudo .= fgets($fp,1024); 
}
fclose($fp); 

/*
  Na expressão regular abaixo pego os dois números que tem o seguinte formato:
  9,9999 (ex.: 2,8182)
  O primeiro número é a taxa de compra e o segunda, taxa de venda
*/
eregi("([0-9],[0-9]{1,}).*([0-9],[0-9]{1,})",$conteudo,$saida);
list($lixo,$taxaCompra,$taxaVenda) = $saida;

echo "
<h3>Cotação atual do dólar</h3>
Taxa de compra: <b>$taxaCompra</b><br>
Taxa de venda : <b>$taxaVenda</b><br>
</pre>";
?> 

Geração de códigos captcha em formulários HTML com PHP e PostgreSQL

Paginação de resultados

WAM Sistema de Notícias

Guestbook Livrolivre

SERVER PARA EDITAR GRATUITAMENTE MU-ONLINE

#2 Comentário enviado por sapiras em 15/12/2005 - 09:53h
Bom programa para quem lida com cambio. Muito bom
#4 Comentário enviado por frodoj em 01/02/2008 - 09:27h
Ola, pessoal sou novo aki e peguei esse script da cotação do Dolar pra colcoar no meu site, so q descobri q ele esta pegando valores com 15 dias atrasado..?? alguem ja percebeu isso... por este link aki do script... http://www.bc.gov.br/htms/infecon/taxas/taxas.htm esse link está vindo com cotação errada alguém já arrumou???? se vc pegar e colocar no endereço do navegador ele vai aparece se for hoje por exemplo a data do Dia 15/01/2008 a cotação..??
#5 Comentário enviado por emtudo em 12/02/2008 - 07:32h
Olá!
frodoj, acontece que o bc nao esta atualizando mais esta pagina, nao sei qual o motivo, e tb nao sei se tem outra pagina
#6 Comentário enviado por skyknight89 em 29/02/2008 - 16:18h
Está desatualizado era melhor ensinar como se faz dai a gente fazia direito!
#7 Comentário enviado por apreal em 22/05/2008 - 18:13h
Olá Fábio.
Contratei um profissional de Santos - SP para atualizar o meu Site www.veiculosvaledoaco.com, e ele copiou o código da cotação do dólar do seu tutorial.
Como sei?
É que dando de curioso e tentando consertar o erro, abrir o gerenciador de arquivos do meu servidor e cliquei em cima da cotação do dólar e lá estava com todas as vírgulas o seu código até o nome do autor:Fábio Berbert de Paula.
Só que a cotação está errada, ou seja não está nem mudando.
Tem como você me informar o código certo?

Um forte abraço.
#8 Comentário enviado por apreal em 23/05/2008 - 19:25h
Olá Fábio,

Dando uma de curioso, fiz uma mudança em seu código de autalização do dólar e foi batata.Vou informar o que eu fiz pra que todos possam ter a cotação dólar direto do Banco Central.

<?
/*
cotacaoDolar.php - script usado para extrair a cotação atual do dólar junto ao
banco central do governo federal

Autor: Fábio Berbert de Paula <fabio@vivaolinux.com.br>
http://www.vivaolinux.com.br
*/

// o fopen também funciona para arquivos da rede, uau !
if(!$fp=fopen("http://www5.bcb.gov.br/pec/taxas/batch/taxas.asp?id=txdolar" ,"r" )) {
echo "Erro ao abrir a página de cotação" ;
exit ;
}

$conteudo = '';
while(!feof($fp)) { // leia o conteúdo da página
$conteudo .= fgets($fp,1024);
}
fclose($fp);

/*
Na expressão regular abaixo pego os dois números que tem o seguinte formato:
9,9999 (ex.: 2,8182)
O primeiro número é a taxa de compra e o segunda, taxa de venda
*/
//eregi("([0-9],[0-9]{4}).*([0-9],[0-9]{4})",$conteudo,$saida);
//list($lixo,$taxaCompra,$taxaVenda) = $saida;

preg_match("/([0-9],[0-9]{2,}).*([0-9],[0-9]{2,})/", $conteudo, $saida);
$taxaCompra = $saida[1];
$taxaVenda = $saida[2];
echo "
<h3>Cotação atual do dólar</h3>
Taxa de compra: <b>$taxaCompra</b><br>
Taxa de venda : <b>$taxaVenda</b><br>
</pre>
";
?>
#9 Comentário enviado por emtudo em 23/05/2008 - 19:49h
recomendo uma alteracao neste codigo ai:

eregi("(\>[0-9],[0-9]{1,4})\<.*(\>[0-9],[0-9]{1,4}\<)",$conteudo,$saida);

depois:

$a1[0]='>';
$a1[1]='<';

$a2[0]='';
$a2[1]='';


$taxaCompra=str_replace($a1,$a2,$taxaCompra);
$taxaVenda=str_replace($a1,$a2,$taxaVenda);

Mas pq esta alteração?

pq existe informações na pagina tal como esta "(PDF - 1,5 Mb)"
e a contacao sairia errada...

Espero ter ajudado

Henrique
#10 Comentário enviado por apreal em 23/05/2008 - 20:51h
Henrique, boa noite.

Talvez vc esteja com razão; mas do jeito que está a cotação do dolar saiu beleza no meu site : www.veiculosvaledoaco.com
O valor da cotaçao do dólar hoje 23/05/2008 é: 1,6539 1,6547.

forte abraço.

Obs: não entendo nada de programação só curioso.
Mas espero ter ajudado.
#11 Comentário enviado por emtudo em 23/05/2008 - 21:45h
interessante no seu site nao da problema

eu apenas tinha copiado o novo url e substituido no meu codigo, mas vc falando isso eu resolvi testar seu codigo inteiro, e deu problema.

pq se vc observar o codigo fonte do site contem:

(PDF - 1,5 Mb)
(PDF - 3,5 Mb)


embora no visual quando vc abre o site vc nao ve isso...

* interessante para nao dizer estranho.
#12 Comentário enviado por wsadesigner em 03/03/2010 - 20:45h
Ai Henrique e Fabio tentei utilizar o script e não deu certo dessa vez então o que fiz foi mudar a url do banco central novamente ai funcionou 100%, espero ter ajudado, o script agora ficou assim.

<?php
/*
cotacaoDolar.php - script usado para extrair a cotação atual do dólar junto ao
banco central do governo federal

Autor: Fábio Berbert de Paula <fabio@vivaolinux.com.br>
http://www.vivaolinux.com.br
*/

// o fopen também funciona para arquivos da rede, uau !
if(!$fp=fopen("http://www4.bcb.gov.br/pec/taxas/batch/taxas.asp?id=txdolar&id=txdolar" ,"r" )) {
echo "Erro ao abrir a página de cotação" ;
exit ;
}

$conteudo = '';
while(!feof($fp)) { // leia o conteúdo da página
$conteudo .= fgets($fp,1024);
}
fclose($fp);

/*
Na expressão regular abaixo pego os dois números que tem o seguinte formato:
9,9999 (ex.: 2,8182)
O primeiro número é a taxa de compra e o segunda, taxa de venda
*/
//eregi("([0-9],[0-9]{4}).*([0-9],[0-9]{4})",$conteudo,$saida);
//list($lixo,$taxaCompra,$taxaVenda) = $saida;

preg_match("/([0-9],[0-9]{2,}).*([0-9],[0-9]{2,})/", $conteudo, $saida);
$taxaCompra = $saida[1];
$taxaVenda = $saida[2];
echo "
<h3>Cotação atual do dólar</h3>
Taxa de compra: <b>$taxaCompra</b><br>
Taxa de venda : <b>$taxaVenda</b><br>
</pre>
";
?>

Ahhh, observem que no final em Cotação Atual do do Dólar tive que colocar o código html referente aos acentos.
#13 Comentário enviado por fabio em 09/03/2010 - 01:01h
Olá Wesley,

Obrigado por melhorar meu códgo. Sua versão ficou muito boa, meus parabéns!

[]'s
#14 Comentário enviado por rubenscarrilho em 14/02/2011 - 16:00h
Preciso muito da ajuda de vocês!
Baseado na versão 1267660025.cotacaoDolar.php, como eu faço agora para armazenar os dois valores em variaveis XML, para que meu Flash consiga receber estes valores em um texto dinamico ?

Por Favor gostaria muito da ajuda de vocês.

Obrigado!
#16 Comentário enviado por paraander em 26/02/2017 - 22:09h
Fala pessoal, em 2010 adaptei o código do Fábio, mas agora o Banco Central mudou todo o layout não permitindo mais varreduras no código, agora todo o código é injetado com JS o que fica mais difícil.

Neste novo script eu mudei o alvo para o site da InfoMoney. Downlod e exemplo: https://blog.invettor.com.br/script-de-cotacao-do-dolar-do-site-da-infomoney/

Contribuir com comentário

Entre na sua conta para comentar.