Bir işi yapmadan önce ne yapmak istediğimize ve elimizdekilere bakmalıyız.
- çekilecek veri büyük mü => hayır
- çok fazla condition veya calc gerektiren ham veriye mi sahip => hayır
- sıklıkla güncellenen bir veri mi => evet
- sunucu donanım, optimizasyon ve db tasarımı uygun mu => hayır
Bütün bunların sonucunda;
Senin yapman gereken, apiden gelen veriyi json dosyası olarak sitene kaydetmek ve kendi json dosyandan veriyi çekmek.
kolay gelsin;
// API BİLGİSİNİ JSON OLARAK SİTENİZE KAYDEDER.
$FILE = __DIR__."/api.json";
$API_URL = "https://raw.githubusercontent.com/codehakan/deneme/main/data.json";
$data = file_get_contents($API_URL);
file_put_contents($FILE, $data);
// Sitenize kaydettiğiniz json dosyasından veriyi oku
// EĞER SADECE BITCOIN,ETERHUM GİBİ BİLGİLERİ FOR KULLANMADAN ÇEKMEK İSTERSEN
/*
$jsonData[0] => bitcoin
$jsonData[1] => ethereum
$jsonData[2] => binancecoin
$jsonData[3] => ripple
$jsonData[4] => dogecoin
$jsonData[5] => tether
$jsonData[6] => cardano
$jsonData[7] => polkadot
$jsonData[8] => bitcoin-cash
$jsonData[9] => litecoin
*/
$FILE = __DIR__."/api.json";
if (file_exists($FILE)) {
$data = file_get_contents($FILE);
$jsonData = json_decode($data);
// bitcoin bilgisini çek diyoruz => $jsonData[0]
$item = $jsonData[0]; // hangı coin bilgisi çağırılsın $jsonData[1], $jsonData[2]
$name = $item->name;
$itemCurrencies = $item->market_data->current_price;
$usd = $itemCurrencies->usd;
$aed = $itemCurrencies->aed;
print_r("$name - USD: $usd - AED: $aed");
}