OpenWeatherMap Api ile Hava Durumu - Burak Bakırtaş

Sosyal Ağlar, Teknoloji ve Web Programlama

Post Top Ad

26 Eylül 2018 Çarşamba

OpenWeatherMap Api ile Hava Durumu

OpenWeatherMap api kullarak bulunduğunuz şehrin yada istediğiniz herhangi bir şehrin güncel hava durumunu alabilirsiniz.

İhtiyacınız olan
1- OpenWeatherMap  Api Key
2- Şehrin Id'si


Öncelikle OpenWeatherMap sitesinden ücretsiz olarak api kaydınızı yaptırın.Sonrasında api keyinizi alın.


Şehir Id leri http://bulk.openweathermap.org/sample/city.list.json.gz

Bu link dışında örnek https://openweathermap.org/city/752850 752850 olan sakaryanın id si bunu sitede arama yaparakta bulabilirsiniz.

PHP Curl ile apinizin desteğini alarak json kodlarınızı okuyup html ile gösterimi yapıyoruz.


 <?php  
 $apiKey = "API KEY";  
 $cityId = "CITY ID";  
 $googleApiUrl = "http://api.openweathermap.org/data/2.5/weather?id=" . $cityId . "&lang=en&units=metric&APPID=" . $apiKey;  
 $ch = curl_init();  
 curl_setopt($ch, CURLOPT_HEADER, 0);  
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);  
 curl_setopt($ch, CURLOPT_URL, $googleApiUrl);  
 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);  
 curl_setopt($ch, CURLOPT_VERBOSE, 0);  
 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);  
 $response = curl_exec($ch);  
 curl_close($ch);  
 $data = json_decode($response);  
 $currentTime = time();  
 ?>  
 <!doctype html>  
 <html>  
 <head>  
 <title>Forecast Weather using OpenWeatherMap with PHP</title>  
 </head>  
 <body>  
   <div class="report-container">  
     <h2><?php echo $data->name; ?> Weather Status</h2>  
     <div class="time">  
       <div><?php echo date("l g:i a", $currentTime); ?></div>  
       <div><?php echo date("jS F, Y",$currentTime); ?></div>  
       <div><?php echo ucwords($data->weather[0]->description); ?></div>  
     </div>  
     <div class="weather-forecast">  
       <img  
         src="http://openweathermap.org/img/w/<?php echo $data->weather[0]->icon; ?>.png"  
         class="weather-icon" /> <?php echo $data->main->temp_max; ?>°C<span  
         class="min-temperature"><?php echo $data->main->temp_min; ?>°C</span>  
     </div>  
     <div class="time">  
       <div>Humidity: <?php echo $data->main->humidity; ?> %</div>  
       <div>Wind: <?php echo $data->wind->speed; ?> km/h</div>  
     </div>  
   </div>  
 </body>  
 </html>  

Ortaya çıkan sonuç


Hiç yorum yok:

Yorum Gönder