PHP ile Güncel Döviz Kurlarını Çekmek
Bu yazı ile sizde isterseniz websiteniz üzerinden güncel döviz kurlarını anlık olarak gösterebilirsiniz. Bu işlemler esnasında tcmb.gov.tr tarafından sağlanan güncel kur bilgisini kulllanacağız.
Kurların tamamını bu sayfada bulabilirsiniz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
<?php function curlAl($url){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_REFERER,'http://www.google.com.tr'); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1'); $exec = curl_exec($ch); curl_close($ch); return $exec; } function dovizKurlariGelsin() { $sonuc = array(); $bir = curlAl('http://www.tcmb.gov.tr/kurlar/today.xml'); $xml = simplexml_load_string($bir); foreach($xml as $k) { $kurKodu = $k->attributes()->CurrencyCode{0}; //kur kodu if($kurKodu != 'XDR') { $sonuc[] = array('kur' => (string)$kurKodu, 'adi' => (string)$k->Isim, 'alis' => (string)$k->ForexBuying, 'satis' => (string)$k->ForexSelling); } } return $sonuc; } $kurlar = dovizKurlariGelsin(); echo '<table border="1"><tr><th>Kur</th><th>Alış</th><th>Satış</th></tr>'; foreach($kurlar as $k) echo '<tr><td>'.$k['adi'].'</td><td>'.$k['alis'].'</td><td>'.$k['satis'].'</td></tr>'; echo '</table>'; ?> |
Ekran Görüntüsü
Çalışan örnek dosya bu linkten ulaşabilirsiniz.
Bizim yaptığımız bu işlemde tcmb den tüm kurları çekerek, bunu bir dizi şeklinde geri döndürmek. Burada amaç diyelim ki websitenizde bir köşede döviz kurları ile matematiksel işlem yaptırmak isiyorsunuz bu diziyi rahatça kullanabilirsiniz.
Bu dizi dönüş olarak tüm kurları veriyor fakat size diyelim ki sadece dolar kuru lazım o zaman $kurlar[‘USD’] dizi değerini kullanarak sadece dolar kurunu işletebilirsiniz.
Örneklere devam edecek olursak;
1000 TL nin dolar karşılığı için;
1 |
$kacDolarAlirim = 1000 / $kurlar['USD']['satis']; |
1000 USD nin tl karşılığı için;
1 |
$kacTLAlirim = 1000 * $kurlar['USD']['alis']; |
gibi basit matematiksel işlemlerle istediğinizi yapabilirsiniz.
26.11.2019 -> Kur çekmedeki yaşanan sorun düzeltildi.
Servet
17 Mayıs 2020Buna birde gram altın eklenebilir mi? Nasıl ekleyebiliriz?
Hakan
23 Mayıs 2020TCMB sadece döviz kur bilgisi paylaşıyor. Altın kurunu ücretsiz xml olarak paylaşan kulcealtin.com var herhalde. Müsait bir zamanda altın kuru içinde benzer bir php kod sayfası hazırlarım.