La société ez System propose depuis peu une suite de composants PHP très utile distribuée sous la nouvelle licence BSD : eZ components.

Ces composants sont très bien fait et permettent d’augmenter la productivité des développeurs. La liste contient plus de vingt composants des plus variés possibles : du moteur de template, à l’outil de manipulation d’image, en passant par le générateur de code PHP ou le moniteur système !

En version 1.1.1 actuellement, le carnet de route laisse présager de nouvelles fonctionnalités très intéressantes pour la fin de l’année.

Le générateur d’icône d’email, Email 2 icon 1.3.0, a été réécrit avec certain de ces composants comme :

  • Mail : pour la génération et l’émission de mail.
  • Template : pour le moteur de rendu à partir de template.
  • Translation : pour l’internationnalisation de l’application.

J’ai été très décu par Template. L’écriture des templates est beaucoup moins simple qu’avec Smarty. Par contre, les composants Mail et Translation sont très simples à utiliser et très efficaces (même si perfectible pour le second).

J’aurais bien aimé utiliser UserInput mais sa dépendance avec l’extension PHP filter me pose des problème avec mon hébergeur[1].

Je suis actuellement en train de tester :

  • Database : une API de communication avec les bases de données basée sur PDO.
  • PersistentObject : un outil de persistance des objets basé sur le composant précédent.

J’aimerai par la suite tester :

  • Dans un premier temps :
    • EventLog : pour générer des traces applicatives.
    • Feed : pour la gestion des flux RSS (pas encore disponible).
    • Url : pour manipuler des URLs.
  • Puis dans un second temps :
    • Archive : pour manipuler des fichiers d’archives dans différents format de compression.
    • Cache : pour la gestion d’un cache.
    • ImageConvertion : pour manipuler des images.

Ces composants sont très utiles car ce sont le type de service que l’on retrouve dans la plupart des applications web[2].

Notes

[1] Impossible d’installer des extensions PEAR, et le programme autoconf non disponible.

[2] Notez que certain de ces composants sont dédiés à l’utilisation de PHP en mode console.