## Quelques projets liés à PHP

### PEAR

» PEAR, qui signifie `PHP Extension and Application Repository` (initialement, PHP Extension and Add-on Repository), est la première version des classes de base en PHP, et pourrait devenir à terme un moyen privilégié de distribuer des extensions PHP entre développeurs.

PEAR est né durant les débats tenus lors des PHP Developers' Meeting (PDM) (Rencontres de développeurs PHP), qui ont eu lieu en Janvier 2000 à Tel Aviv. Il a été créé à l'initiative de Stig S. Bakken, et est dédié à sa première fille, Malin Bakken.

Depuis l'an 2000, PEAR a grossi jusqu'à devenir un projet significatif avec un groupe de développeurs compétents, qui travaillent à mettre en place une bibliothèque complète, réutilisable et commune, au bénéfice de la communauté PHP entière. Aujourd'hui, PEAR inclut une vaste sélection de classes de base pour accéder à des bases de données, pour stocker du contenu en cache, réaliser des calculs mathématiques, des transactions de commerce électronique, etc.

Plus d'informations sur PEAR sont disponibles dans » le manuel.

### Equipe d'assurance Qualité

» L'équipe d'assurance Qualité de PHP a été mise en place durant l'été 2000, en réponse aux critiques reçues par PHP 3.0, qui n'était pas suffisamment testé pour des environnements de production. L'équipe est maintenant composée d'un groupe de développeurs de haut niveau, qui ont une bonne connaissance des sources PHP. Ces développeurs passent une bonne partie de leur temps à localiser et corriger les bogues trouvés dans PHP. De plus, il y a un bon nombre d'autres membres du groupe PHP qui testent et fournissent un compte-rendu fidèle de l'utilisation de PHP sur différentes plateformes.

### PHP-GTK

» PHP-GTK est la solution PHP pour écrire des applications avec interface graphique, côté client. Andrei Zmievski se souvient de la création de PHP-GTK :

> La programmation d'interface GUI m'a toujours intéressée, et je pensais que Gtk+ était une excellente bibliothèque, hormis le fait que programmer avec en C est plutôt laborieux. Après avoir assisté aux implémentations de PyGtk et GTK-Perl, j'ai décidé de voir si PHP pouvait disposer de sa propre interface avec Gtk+, même minimale. J'ai commencé au mois d'août 2000, alors que j'avais un peu plus de temps libre, et j'ai réalisé les premières expérimentations. Mon guide principal fut l'implémentation de PyGtk, qui était plutôt complète et avait une interface orientée objet. James Henstridge, l'auteur de PyGtk, fut d'une aide précieuse au démarrage de ce projet.

> Réécrire toutes les interfaces de Gtk+ à la main était hors de question et j'ai pensé à réaliser un générateur de code, exactement comme PyGtk l'avait fait. Le générateur de code est un programme PHP qui lit un ensemble de fichiers .defs, contenant les classes, constantes et méthodes Gtk+, puis génére le code C qui sert d'interface à PHP. Ce qui ne peut pas être généré automatiquement peut être écrit à la main, dans le fichier .overrides.

> Travailler sur le générateur de code et sur l'infrastructure prit un peu de temps, car je n'avais que peu de temps à consacrer à PHP-GTK durant l'automne 2000. Après que j'ai montré PHP-GTK à Frank Kromann, il s'y intéressa et commença à m'aider sur le générateur et l'implémentation Win32. Lorsque nous écrivîmes le premier programme 'Hello World', ce fut extrêmement excitant. Il fallut encore quelques mois pour que le projet soit présentable, et la version initiale fut publiée en mars 2001. La nouvelle fut rapidement relayée sur SlashDot.

> Anticipant que PHP-GTK pourrait devenir un projet à part entière, j'ai mis en place des listes de diffusion et un serveur CVS indépendants, de même que le site gtk.php.net avec l'aide de Colin Viebrock. La documentation avait aussi besoin d'être rédigée, et James Moore vint me porter une aide précieuse.

> Depuis sa publication PHP-GTK a gagné en popularité. Nous avons notre propre équipe de documentation, le manuel s'améliore de plus en plus, des gens ont commencé à écrire des extensions pour PHP-GTK, ainsi des applications de plus en plus importantes l'utilisant.