Php Döviz Botu
#Php - 13 Oct 2020
Merhabalar, bilgisayar başında boş vakit geçirirken basit ama işe yarayabileceğini düşündüğüm bir bot yapmak istedim. Döviz.com üzerinden anlık olarak veri çekiyor ve her 5 saniye sayfayı otomatik olarak yeniliyor. File_get_contents fonksiyonuyla siteyi çağırdım ve preg_match_all fonksiyonu yardımıyla verilere eriştim. Türkçe karakter hataları olmaması için str_replace fonksiyonuyla bazı harfleri ingilizcesiyle değiştirdim. Daha sonra listelemesini yaptım ve botu oluşturdum. Döviz verileri:
  • GRAM ALTIN: 222,1312
  • DOLAR: 5,5896
  • EURO: 6,3794
  • BIST 100: 90.541,53
  • BITCOIN: $6.485
  • Bitcoin: 5,5859
  • Bitcoin Cash: 5,5896
  • Ethereum: $6.484,8301
  • IOTA: $437,7363
  • Litecoin: $203,9040
  • Ripple: $0,4874
  • BIST 100: $52,0169
  • Euro/Dolar: $0,4570
  • Brent Petrol: 90.542
  • Dolar Endeksi: 1,1404
  • Tahvil: $77,7800
  • Doviz Sepeti: 96,4051
Yukarıdaki şekilde listelenmektedir. Göstermek istediğiniz yere aşağıda verdiğim kodları eklemeniz yeterli olacaktır.
<?php

/* 

 - Php ile anlık dolar, euro ve altın kuru
 - www.tayfunguler.org

*/

	 $ups = $_SERVER['REQUEST_URI'];
	 header("Refresh: 5; URL = $ups");

	function replace_tr($text) {
	$text = trim($text);
	$search = array('Ç','ç','Ğ','ğ','ı','İ','Ö','ö','Ş','ş','Ü','ü',' ');
	$replace = array('c','c','g','g','i','i','o','o','s','s','u','u',' ');
	$new_text = str_replace($search,$replace,$text);
	return $new_text;
	} 

 	$site = file_get_contents('https://kur.doviz.com/serbest-piyasa/amerikan-dolari');

 	preg_match_all('@<span class="name">(.*?)</span>@si', $site, $name);
 	preg_match_all('@<span class="value">(.*?)</span>@si', $site, $value);

 	$nameupdate 	= 	$name[1];
 	$valueupdate 	= 	$value[1];

	echo "<ul>";
 		foreach ($nameupdate as $nameup => $key) {
 			echo "<li>";
 				echo replace_tr($key);
 				echo ": ";
	 		foreach ($valueupdate as $valuep => $value) {
	 			if($nameup == $valuep) {
	 				echo replace_tr($value);
	 				echo "</li>";
	 			}
	 		}
 		}

	echo "</ul>";