Google Weather API
Voici une classe vous permettant de profiter des services de météo proposés par Google.
Vous allez pouvoir très facilement obtenir un rendu de ce style :

Cette classe s’utilise simplement de la manière suivante :
$gweather = new GoogleWeatherAPI('nantes','fr'); // "en" also work
if($gweather->isFound()) {
echo '<pre>'; print_r($gweather->getCity()); echo '</pre>';
echo '<pre>'; print_r($gweather->getCurrent()); echo '</pre>';
echo '<pre>'; print_r($gweather->getForecast()); echo '</pre>';
}
Cela donne le rendu suivant :
Nantes, Pays de la Loire Array ( [condition] => Couverture nuageuse partielle [temp_f] => 63 [temp_c] => 17 [humidity] => Humidité : 68 % [icon] => http://www.google.com/ig/images/weather/partly_cloudy.png [wind_condition] => Vent : NO à 10 km/h ) Array ( [0] => Array ( [day_of_week] => sam. [low] => 7 [high] => 19 [icon] => http://www.google.com/ig/images/weather/rain.png [condition] => Pluie ) [1] => Array ( [day_of_week] => dim. [low] => 8 [high] => 19 [icon] => http://www.google.com/ig/images/weather/rain.png [condition] => Pluie ) [2] => Array ( [day_of_week] => lun. [low] => 9 [high] => 19 [icon] => http://www.google.com/ig/images/weather/rain.png [condition] => Pluie ) [3] => Array ( [day_of_week] => mar. [low] => 8 [high] => 19 [icon] => http://www.google.com/ig/images/weather/rain.png [condition] => Averses ) )
Libre à vous de mettre en forme les données proposées.
Voici un exemple de rendu que je vous propose :

Démonstration
example.php (1,9 KiB, 1 579 hits)
Attention : Google envoie toutes les données dans un flux xml en UTF8, si votre site est en UTF8, aucun problème, sinon, pensez à utf8_decode().
GoogleWeather.class.php (3,3 KiB, 1 966 hits)
Changelog
[02/09/2009]
- Utilisation de CURL
[25/08/2009]
- Ajout d’une démo
[19/05/2009]
- Mise en place de la méthode isFound() pour tester que la ville à été trouvé
[09/05/2009]
- Release initiale







16 mars 2010 - 23 h 51 min
En affichage normal j’ai Vent : N à 11 km/h et Humidité par exemple;
Voici le lien de mon test : http://www.voyage-australie-nz.com/test.html
30 mars 2010 - 17 h 47 min
Merci pour ton boulot la dessus !
Par contre il faut aussi faire attention à utiliser php 5 sinon cela ne marchera pas !
Greg ton souci est un souci d’encodage, a tu lu ces lignes :
Attention : Google envoie toutes les données dans un flux xml en UTF8, si votre site est en UTF8, aucun problème, sinon, pensez à utf8_decode().
Vu que l’encodage de tes pages est ISO 8859-1 c’est normal que les caractères accentués ne passent pas….
30 mars 2010 - 17 h 50 min
OUps désolé j’avais pas fait attention aux cinq pages de commentaires précédentes….
Cela m’aurait économiser 15 minutes le temps de penser à cette histoire de version php….
20 avril 2010 - 18 h 13 min
Merci pour le boulot
19 mai 2010 - 20 h 05 min
Bonjour,
vous nous donnez un lien pour récupérer tout les icônes de weather google a cette adresse http://weatherdoll.com/weather-icons.php
Le hic c’est comment en suivant votre exemple.php dire utiliser tel ou tel type d’icônes vue que ceux qui s’affichent ne sont pas stockés sur mon serveur mais chez google ?
En gros comment on fait pour personnaliser les icones ?
20 mai 2010 - 8 h 21 min
Tout dépends des habitudes que tu as. Il suffit à partir de l’url de l’image de récupérer seulement le nom de l’image. Plusieurs choix possibles, expression régulière ou strrchr.
Exemple : strrchr(‘http://www.google.com/ig/images/weather/partly_cloudy.png’, ‘/’);
Te retournera un truc du genre :
partly_cloudy.png
Après tu peux y coller le chemin que tu veux.
16 août 2010 - 10 h 30 min
Bonjour,
Merci pour l’application
Cependant je n’arrive pas a changer la ville (elle reste désespérément sur Nantes)
J’ai essayé de la changer dans
$gweather = new GoogleWeatherAPI(‘nantes’,'fr’); mais rien n’y fait
merci