Mise en place d'une classe PHP permettant de parcourir les fichier HTML via des requêtes SQLLe PHP Programming Innovation award est un concours à l’initiative du site PHPClasses, lancé depuis avril 2004. Cet événement sponsorisé par de nombreuses sociétés intervenant de près ou de loin autour de la plateforme PHP comme O’REILLY, PHPmagazine, Maguma,… et bien entendu Zend.

Le but de cette initiative est de pousser à l’innovation en terme de programmation PHP et c’est dans le cadre de ce concours que Jonas John (nominé lors de l’édition de Mai 2006) à mis en place un système très intéressant et assez innovant pour parser et récupérer les informations de documents HTML.

Le principe est d’utiliser le langage SQL pour parcourir les différentes balises d’un script HTML et en récupérer le contenu textuel ainsi que les valeurs des attributs. On y retrouve les principales composantes des requêtes SQL à savoir SELECT … FROM … WHERE…, et l’exemple ci-dessous illustre parfaitement la simplicité d’utilisation de cette classe :

SELECT href FROM a WHERE $id==”list” : recuperation du lien de la balise <a/> dont l’identifiant est “list”.

Cette classe, qui est également utilisable pour des fichiers XML relativement simples, peut se révéler très utile même si elle demande encore à évoluer (pas de prise en compte de la notion de tri, condition assez limité,…).

Class: HTML SQL