PHP ile JSON Dosyasından Döviz Bilgilerini Alma
Bu yazımızda internet ortamında paylaşılan bir JSON dosyasından döviz bilgilerini elde edeceğiz. İnternet üzerinde arama yaparsanız ücretli veya ücretsiz olarak JSON formatında döviz bilgilerinin paylaşıldığını göreceksiniz. Ben yaptığım araştırmalar sonucunda aşağıdaki linki buldum.
https://finans.truncgil.com/today.json
Linke erişim sağladığınız zaman JSON yapısının aşağıdaki gibi olduğunu göreceksiniz.
{
"Güncelleme Tarihi": "2019-05-02 11:15:02",
"ABD DOLARI": {
"Alış": "5.9563",
"Satış": "5.9671",
"Tür": "Döviz"
},
"AVUSTRALYA DOLARI": {
"Alış": "4.1892",
"Satış": "4.2165",
"Tür": "Döviz"
},
"EURO": {
"Alış": "6.6730",
"Satış": "6.6851",
"Tür": "Döviz"
},
"İNGİLİZ STERLİNİ": {
"Alış": "7.7176",
"Satış": "7.7579",
"Tür": "Döviz"
}
}
PHP'de uzak sunucuda yer alan bir dosyanın içeriğini okumak için birçok fonksiyon bulunmaktadır. Ben file_get_contents fonksiyonunu kullanacağım. Öncelikle JSON dosyasının içeriğini bir değişkene aktarıyorum.
$jsonVeri=file_get_contents("https://finans.truncgil.com/today.json");
Elde ettiğim $jsonVeri değişkeni içerisinde JSON yapısında veri tutmaktadır. Bu veriyi kullanmak için nesne veya dizi yapısına çevirmemiz gerekiyor. PHP'de bulunan json_decode fonksiyonu en az bir parametre ile çalışmaktadır. Parametre girmediğiniz takdirde bu fonksiyon, JSON verisini "nesne" olarak çözümlemektedir. Eğer ikinci parametre olarak 1 değerini girerseniz veriyi "dizi" olarak çözümleyecektir. Linkteki JSON dosyasında isim-değer çiftlerinin isim kısımları Türkçe karakter içerdiği için bu dosyadaki verileri nesne olarak kullanamıyorum. Bu yüzden veriyi dizi olarak çözümleyeceğiz.
$veri=json_decode($jsonVeri,1);
Artık $veri değişkeni üzerinden istediğim döviz kuruna ve zaman bilgisine erişim sağlayabilirim. Kurun son güncellenme zamanını almak istiyorsanız aşağıdaki şekilde bir kullanım gerçekleştirmelisiniz.
$veri["Güncelleme Tarihi"];
Gördüğünüz gibi $veri değişkenindeki veriler dizi yapısında olduğu için indeks değerleri üzerinden verilere erişim sağlayabiliyorum. Şimdi dolar kurunun alış ve satış fiyatnı elde etmeye çalışalım.
echo $veri["ABD DOLARI"]["Alış"];
echo $veri["ABD DOLARI"]["Satış"];
Bize verilen dosyada dolar kuru "ABD DOLARI" ismiyle paylaşılmaktadır. Bu yüzden indeks değeri olarak bu ifadeyi yazdım. Alış ve satış kurları için de ifademe bir indeks daha ekledim.
Şimdi Euro kuruna göz atalım.
echo $veri["EURO"]["Alış"];
echo $veri["EURO"]["Satış"];
Bu kadar kolay. İstediğiniz döviz kuruna ait indeks değerini yazarak kur bilgilerine erişim sağlayabilirsiniz.
Anlatıma ait işlemlerin yer aldığı videoyu aşağıdan izleyebilirsiniz.
Soru görüş ve önerileriniz için yorum kısmını kullanabilirsiniz.
Hayırlı çalışmalar dilerim.