Utiliser l’API météo de Google

IMPORTANT : Depuis la publication de cet article, l’API météo fournir par google à été supprimée, elle ne fonctionne plus. J’ai créé un bundle symfony qui utilise l’API de OpenWeatherMap, ce bundle est libre et son code source est disponible sur son dépot github

Pour un de mes sites perso sur les villes de France, j’utilisais le webservice météo fourni par The Weather Channel mais quelques temps celui-ci est devenu payant j’ai donc dû trouver une solution alternative. Apres un peu de recherche à droite et à gauche j’ai trouvé un webservice peu connu et peu documenté fourni par Google correspondant bien à mes besoins.
Lire la suite

Traitements parallèles grâce a Gearman

Je me suis déjà frotté au multitâche avec PHP, et il faut dire, avec un certain recul et pas mal de temps de tests, que je suis plutot déçu par la stabilité du système mis en place. J’avais développé ça sur une base de forks de process. Ça marchait bien jusqu’à un certain point, lorsque le serveur était un peu chargé (à peine plus que d’habitude) certain de mes process plantaient aléatoirement, jamais le même process. Peut-être que j’abusais un peu, mais bon j’en ai besoin de mes 200 process moi.

Dans ma quête de stabilité, je me suis dit qu’utiliser Gearman serait une bonne idée, il est censé être simple, scalable, stable, et tout et tout.

Lire la suite

Associer un sous-domaine à une application symfony

Coté serveur web

Il faut soit  créer des virtual host pour tous vos sous-domaine.

Soit créer un seul virtual host en utilisant des wildcards dans le ServerAlias, du coup tous les sous-domaines pourraient correspondre à une application, plus besoin de créer autant de virtual hosts que de sous-domaine. Il doit même être possible d’utiliser les wildcards dans la déclaration du domaine dans le gestionnaire de dns.

Lire la suite

PHP fait du multitâche

Pour les besoins d’un projet effectuant un grand nombre de tâches répétitives, j’ai dû mettre en place un système basé sur un script PHP lancé par cron à intervalles réguliers. Il n’y a aucune difficulté particulière à réaliser ceci, là où ça commence à être intéressant c’est à partir du moment où il a fallu que ce script puisse lancer plusieurs tâches en même temps.

On a donc un script lancé à intervalles réguliers qui lui même va lancer et gérer un certain nombre, configurable, de tâches concurrente. Voici comment j’ai procédé.

Lire la suite

Magento : ajouter et enlever des produits du panier

Magento est un système de commerce électronique assez complexe à appréhender, il est bien mieux organisé que le vieillissant Oscommerce et peut être modifié à souhait grâce à une architecture bien pensée, basée sur Zend Framework mais qui demande quand même assez de temps pour s’y habituer. Je vous propose dans ce billet de voir comment faire pour ajouter et enlever des produits du panier de façon automatique.

Lire la suite