News PHP

Larry Garfield présente le nouveau gestionnaire d'inclusion de Drupal. Ce dernier, en version 6, représentait 50% du temps d'exécution d'un script Drupal : en bref, à chaque appel de page, Drupal passait la moitié du temps à inclure des bibliothèques, et l'autre moitié à s'exécuter.

Pour gagner en exécution, Larry a monté un gestionnaire dynamique : il analyse le code source des scripts PHP inclus, puis détermine les fichiers nécessaires pour exécuter cette page, en extrayant les fonctions. Puis, un cache d'inclusion est réalisé pour gagner du temps. Cela revient à un __autoload(), avec un peu plus d'intelligence.

Le démarrage d'un script est certainement l'un des endroits d'une application où il y a le plus à gagner. Jusqu'à présent, on incluait tout ce qu'il était possible d'inclure pour ne pas manquer de fonctions lorsque le temps viendrait de les utiliser. Mais cela revient à cuire un gateau complet, et n'en manger qu'une petite portion : le reste est gaspillé.

Avez-vous d'autres stratégies pour réduire vos phases de lancements de scripts ?

- Drupal 7 gets introspective code registry
- Drupal Registry
le 07/05/2008 à 22:33
Statistiques PHP pour avril 2008
De bonnes nouvelles sur le front des versions PHP : avec la publication début mai de PHP 5.2.6, PHP 5.2.5 a eu le temps d'assoir définitivement sa suprématie : c'est aujourd'hui la version la plus populaire de PHP, devant PHP 4.4.7 et 4.4.8. Malheureusement pour les versions 5, c'est la seule version qui se classe si bien, et cela laisse encore une majorité de PHP 4.

PHP 5 atteint maintenant 36,60% de parts de marché, ce qui est une progression de 2% ce mois-ci. Et encore beaucoup de migrations vers les versions sécuritaires de PHP, la 4.4.8 (relativement) et 5.2.5.

On verra les performances que vont présenter la version 5.2.6 ce mois-ci, et son impact sur le classement de la 5.2.5. À vos compilateurs, et n'oubliez pas le test fest du mois.

- Evolution de PHP sur Internet (avril 2008)
- Statistiques de déploiement de PHP de avril 2008
- TestFest
Loïc d'Anterroches publie un billet anodin, mais plein de petites pépites.

Il existe une implémentation gettext en PHP, disponible dans le code de pluf. C'est pratique si votre PHP n'est pas compilé avec cette extension. Reste à voir si on peut extrire facilement cette bibliothèque du framework Pluf.
Pluf est un framework PHP 5, avec template, ORM et 2 ans de maturité.
Poedit est un éditeur de fichiers .po, pour gettext. Cela peut se révéler pratique pour utiliser gettext, et comparer la version originale et la traduction.
Si vous voulez profiter des caches de code PHP, il faut que toute votre application soit en PHP : y compris les fichiers de ressources (configuration, traductions, fichiers statiques). En effet, les caches ne prennent en compte que les scripts PHP, et pas les autres média. Il faut donc veiller à faire une conversion en PHP pour gagner en performances sur ce plan-la.

- Mise en place des traductions dans Pluf
- Pluf
- POedit
le 06/05/2008 à 21:14
Logique métier sur Excel et en ligne
Maarten Balliauw publie un tutoriel pour réaliser des sites Web dont la logique métier est établie sur une feuille excel.
En se basant sur phpexcel, un projet d'interface entre le fameux tableur et PHP, on peut charger une feuille excel, et l'utiliser pour exécuter des calculs, puis en extraire le résultat. Le tout, en 5 étapes.

A voir, car il existe de nombreuses PME où les feuilles excel portent les calculs complexes métier.

- Reuse Excel business logic with PHPExcel
- site phpexcel
- codeplex
Difficile de se passer des constructeurs, mais en fait, difficile de ne pas être génés par eux. Comment ?

Les constructeurs créent des objets, et sont nécessaires au fonctionnement du programme. Mais la création peut se faire de différentes manières : par exemple, pour créer un intervalle, on pourrait avoir un constructeur avec les deux bornes, ou bien un constructeur avec la borne inférieure et la taille, ou la borne supérieure et la taille. Cela fait 3 constructeurs différents, qui ne peuvent se différentier par leur signature (le nombre des arguments du constructeur).

Il semble qu'en Java, tel que m'en parlait David Avenante, la pratique consiste à faire une usine avec un nom explicite, qui fait appel au constructeur. Cela masque le new, mais permet de produire les objets avec des méthodes explicites.

Voyez les exemples de Jared pour mieux comprendre son point.

- Public constructors considered harmful
le 05/05/2008 à 21:47
Sun Netbeans supporte PHP
Basé sur le même framework de scripting générique que Sun a utilisé pour Ruby, le paquetage PHP inclut des outils de management de projet dont la refactorisation de code pour faciliter le déploiement.
L'entreprise compte sur une implication encore plus forte de la communauté pour intégrer d'autres langages dynamiques à Netbeans.
Des rumeurs parlent de Python et du support de Scala.
Il est également prévu d'offrir la possibilité de publication sur des réseaux sociaux.

Publié sur le journal du Net.

- Netbeans supporte le langage PHP
- NetBeans
- NetBeans IDE Early Access for PHP
Xdebug est l'outil de référence pour analyser les performances d'une application PHP. Toutefois, il impose l'installation de kcache grind, qui se révèle une opération très difficile sur OSX et Windows.

Deux projets ont été lancés sur ce sujet : un via le GSOC (Google Summer of Code), qui vient juste de démarrer, par Chung-Yang Lee, et mentoré par David Coallier. Les résultats devraient arriver durant l'été, tandis que Web Grind existe déjà, en version beta, sur Google Code.

- XDebug to finally get a Web Frontend
- Webgrind: A Web Frontend for Xdebug
- Webgrind
le 05/05/2008 à 21:42
Une Release de Copix : 3.0.3
Note de l'auteur :

Copix 3.0.3 est officiellement disponible sur la page de téléchargements du projet. Pas mal de nouveautés majeures. Parmi celles-ci on peut citer l'apparition de Validateurs qui permettent de valider objets, tableaux ou autre. Il est aussi possible de gérer des ressources web à l'intérieur du répertoire d'un module, pratique pour packager une application complète avec images, icônes et javascripts.

D'ailleurs j'ai commencé à créer un module wbe pour regrouper les différents éditeurs html type tiny MCE et FCKEditor.

A suivre...

- Sortie de Copix 3.0.3 et autres nouvelles...
- Copix
- Téléchargement Copix 3.0.3
Le web évolue et les technologies associées aussi.

Un rendez-vous est organisé par l’AFUP (Association Française des Utilisateurs de PHP) et Microsoft sur le sujet "Applications riches sur le Web avec PHP et Silverlight"

Vous pourrez ainsi découvrir le 14 mai 2008, Silverlight, le format de client riche de Microsoft.

- Conférence Applications riches sur le Web
L'AFUP (Association Française des Utilisateurs de PHP) annonce l'appel à conférenciers pour le Forum PHP 2008.

Pour cet évènement unique en France nous recherchons les experts francophones qui souhaitent partager leurs expériences et leur savoir-faire. Une liste non-exhaustive inclue les sujets suivants :
- Comment gérer un projet PHP (outils, méthodes, ...)
- Assurer la qualité du code
- Le Droit sur Internet
- Monter son entreprise autour de PHP
- La montée en charge
- Connecter des services (web services)
- Les interfaces riches (choix technologie, implémentation, ...)

Pour postuler rendez vous sur cette page :

- Appel à conférencier pour le forum PHP 2008 de l'AFUP
- Appel à conférencier pour le forum PHP 2008 (Annonce Anglaise)
LoadingChargement en cours