Les actualités du monde PHP

Rechercher
Boutique en ligne, solution e-commerce, script PHP et PERL : RAYNETTE

Les actualités de PHP

Overviews du Framework Symfony 1.1 Bêta 2

Par Emacs le mercredi 26 mars 2008 à 17:05

Depuis le début de cette semaine, les développeurs Symfony (comme moi) ont eu la chance de découvrir deux suprises dont l'une est de taille. La première a été dévoilée samedi 22 mars et concerne la branche 1.0 du framework Symfony. La seconde, quant à elle, a été annoncée hier tard dans la nuit et concerne la branche 1.1. Mais de quoi s'agit-il ?

Fabien Potencier et François Zaninotto ont dévoilé samedi la version 1.0.12 du framework PHP. Cette nouvelle mise à jour corrige un défaut de sécurité et quelques autres bugs mineurs. Dans le même temps, on apprend avec joie que la branche 1.1 du framework continue de s'étoffer et c'est pourquoi une version bêta 2 a été annoncée hier soir. Selon le core-team de Symfony, cette mise à jour devrait être la dernière en ce qui concerne les changements majeurs des fonctionnalités et des opérations de refactoring. En effet, de nombreuses modifications au niveau de l'arborescence des fichiers et des objets du noyau ont été opérés par rapport à la branche 1.0 stable.

Il faut dire que cette nouvelle version du framework Symfony s'annonce très prometteuse, et c'est pourquoi la communauté attend avec grande impatience une version stable et officiellement exploitable en production. Les fonctionnalités nouvelles de Symfony 1.1 sont nombreuses par rapport à la branche 1.0. En voici un résumé exhaustif.

Logo officiel du projet Symfony


La première grande nouveauté concerne l'interface de pilotage du framework en ligne de commandes qui a totalement été réécrite depuis zéro. Pake (interface CLI actuelle de Symfony 1.0) est abandonnée au profit d'un nouveau sous-framework CLI plus intuitif, utilisant des namespaces et permettant de créer ses propres tâches CLI. L'ordre des paramètres de chaque commande n'aura également plus d'importance.

La seconde nouvelle amélioration (annoncée depuis plusieurs mois déjà) concerne le sous-framework de gestion des formulaires qui a, lui aussi, été réécrit entièrement. Ce module a la particularité d'être complètement indépendant, et donc d'être réutilisé comme composant pour des applications n'utilisant pas Symfony au même titre que les composants PEAR ou du Zend Framework. Bien sûr, ce sous-framework de manipulation de formulaires est sous licence MIT. De quoi ravire les entreprises qui ne désirent pas franchir le pas vers Symfony mais qui souhaiteraient développer leur propre framework. Cette brique logicielle le sera d'un grand secours :) Au sein de Symfony, ce framework de manipulation de formulaires assure les pénibles tâches de création, validation et sécurisation des données sans difficulté pour le développeur.

Le sous-framework de gestion des plug-ins a, lui aussi, été réécrit « from scratch » afin de permettre le support des dépendances entre les plug-ins comme le sont aujourd'hui les composant du framework PEAR.

Concernant le moteur d'ORM natif, il s'agit toujours de Propel et non Doctrine, contrairement à certaines rumeurs que l'on entendait à droite et à gauche. Symfony 1.1 intègre désormais la toute dernière version de l'ORM Propel. Le support de l'internationnalisation des informations en base de données a également été amélioré ainsi que les opérations de dump / load des data sous contraintes de clés étrangères. Un meilleur support des behaviors Propel ainsi que la surchage de schemas de bases de données font partie de la mise à jour de la branche Symfony 1.1.

Le moteur de routing a lui aussi subi une petite refonte. Il dispose à présent de son propre système de cache, ce qui assure de meilleures performances lors de la génération de pages contenant beaucoup d'URL. L'objet de routing n'est quant à lui plus un singleton, ce qui signifie que les applications peuvent maintenant accéder aux objets de routing des autres. En ce qui concerne les possibilités de configuration des URL, il est maintenant possible de définir d'autres séparateurs (comme la virgule) autres que le traditionnel slash.

Autre point fort actuel du framework Symfony : le support en natif de l'internationnalisation des applications via des fichiers XML XLIFF. L'équipe de développement a ajouté un système de cache des traductions pour améliorer davantage la génération des templates de la vue. Une nouvelle tâche CLI voit aussi le jour et permet d'extraire des templates les textes soumis à traduction pour générer dynamiquement les dictionnaires XLIFF. De quoi réduire encore les temps de développement ! Au même titre que les objets de routing, l'objet d'internationnalisation n'est plus un singleton. Le support de gettext à lui aussi été ajouté dans cette nouvelle version du framework.

De nombreux apports ont été opérés au niveau du cache global des applications dans le but de rendre les pages plus rapidement. On note surtout le support de nouvelles factories de cache assurant le support des accélérateurs MemCache et APC. Autant dire que Symfony sera très certainement « PHP 6 ready ».

En ce qui concerne la configuration globale des applications, le format YAML (prononcez Yamel) reste en place malgré quelques critiques qui ont été faites à ce sujet. Un effort important a été mis en oeuvre pour cette nouvelle version puisque Symfony 1.1 dispose désormais de son propre parseur YAML. Spyc a donc été visiblement abandonné. Ce nouveau parser renverra au développeur des messages d'erreur bien plus explicites que ceux actuels. Les applications Symfony seront aussi capables de contrôler elles même la version sur laquelle elles fonctionnent. Cela devrait faciliter leur mises à jour.

La dernière partie des mises à jour majeures concerne le framework d'automatisation des tests unitaires et fonctionnels. Un outil de comparaison des performances entre les différentes versions de Symfony est intégré ainsi que le support complet des sélecteurs CSS 3.

Parmi les mises à jour mineures, on retient une amélioration du support des relations « many-to-many » dans l'admin generator, des outils de débug (debug toolbar), des objets Response qui accueillent de nouvelles méthodes, des messages d'erreur de Phing...

Que dire sur la migration des applications Symfony 1.0 vers Symfony 1.1 ? C'est la grande inquiétude des développeurs de la communauté. Rassurons-nous, cette migration devrait se faire tout en douceur selon François Zaninotto puisque 98% de la branche 1.0 est compatible pour un passage en 1.1.

Quelques mots concernant la qualité de Symfony. Il est bon de rappeller que la communauté apporte un soutien phénoménal au développement du framework puisqu'elle soulève et reporte de nombreux bugs dans le trac. Tous les bugs sont fixés selon leur niveau d'urgence mais surtout testés !!! A ce jour, Symfony a subi plus de 8 000 tests unitaires pour valider la qualité et l'intégrité du code.

Pour ceux qui auraient envie de tester la branche 1.1 en bêta 2, une installation via SVN, PEAR ou la sandbox est possible. Notons également un nouveau Symfony Sprint aura lieu dans les jours prochains pour permettre à la communauté d'apporter son aide dans la traduction de la documentation, le développement de nouveaux plugins, la découverte de nouveaux bugs....

Je vous laisse le soin de consulter ces liens pour vous donner davantage l'eau à la bouche :)

Résultats du concours de tutoriels

Par Emacs le lundi 10 mars 2008 à 19:07

Cela fait déjà plus de deux semaines que le concours de tutoriels s'est achevé et toujours pas de nouvelles des résultats. C'est de ma faute, je n'étais pas trop présent ces derniers jours... Entre les cours et le boulot, je n'ai pas trouver le temps de m'occuper d'Apprendre-PHP.com.

Pour récapituler, 4 tutoriels m'ont été remis et sont déjà publiés sur le site :

Tous les tutoriels sont très intéressants et auraient mérité de remporter ce concours. La concurrence était rude et le niveau élevé. Mais il nous fallait quand même déterminer un vainqueur. Notre choix s'est dont porté sur le tutoriel de David Drapeau. Son tutoriel d'installation d'un environnement LAMP 6 sur Debian s'est démarqué des autres par son sujet original, son excellente lisibilité et par le niveau technique requis. Félicitons David pour son résultat mais également Cyril, Christophe et Damien sans qui ce premier tutoriel n'aurait pas eu lieu. Comme promis, David se verra envoyer un exemplaire du livre Sécurité PHP5 et MySQL de Damien Séguy et Philippe Gamache :)

Couverture du numéro de PHPSolutions du mois de mars 2008Je vous informe également qu'une nouvelle version d'Apprendre-PHP.com est en cours de réalisation. La charte graphique ne bougera pas mais des petits changements et autres ajouts verront le jour. Je travaille en collaboration avec Laurent de PHPSources.org pour optimiser le référencement d'Apprendre-PHP.com dans les moteurs de recherches. Merci à lui pour tous ses conseils. Quant à cette nouvelle version, elle sera développée sur la base du framework PHP 5 Symfony. La mise à jour majeure concernera surtout les tutoriels qui seront éclatés sur plusieurs pages en vue d'une lecture plus confortable. En revanche, je n'ai pas encore de date à vous donner à ce jour.

Je vous signale également la sortie chez les marchands de journaux du nouveau numéro du magazine PHP Solutions. Au programme, une confrontation des deux frameworks phares du moment : Symfony vs Zend Framework. Mais c'est aussi tout un tas d'autres articles pour apprendre à développer pour le Web 2.0. Plus d'informations sur le site officiel de PHP Solutions.

PHP et MySQL, MySQLi, PDO : construisez votre application

Par Emacs le samedi 16 février 2008 à 12:12

PHP et MySQL, MySQLi, PDO : Construisez votre application

J'ouvre cette brève news pour vous présenter un nouveau livre français qui traite de PHP5. Il a été écrit par Christophe Villeneuve, membre actif de l'AFUP et newser sur le portail Nexen.net. Ce nouvel ouvrage a pour objectif de présenter le développement d'une application Web PHP pas à pas à partir de différents drivers de bases de données. Le lecteur y découvrira entre l'autre la fameuse couche d'accès aux bases de données PDO, disponible depuis PHP5. Ci-après, le résumé du livre honteusement copié du site de l'éditeur ENI.

Ce livre sur PHP est destiné à toute personne qui désire se lancer dans le développement web avec ce langage. Il détaille pas à pas le développement d’une application de gestion d’un carnet d’adresses sur Internet. La conception de cette application prend en compte différents formats de bases de données (MySQL, MySQLi et PDO) et différentes versions de PHP.

Dans un premier temps, l’auteur choisit de décrire les principales fonctions de PHP en prenant des exemples facilement compréhensibles. Il décrit ensuite pas à pas les différentes étapes du développement en s’aidant des exemples de la première partie (accès sécurisés, gestion du carnet d’adresses, gestion des mots de passe, gestion des administrateurs, affichage et exportation des données...).

Le dernier chapitre détaille des notions plus avancées comme les contrôles de sécurité, le suivi de la navigation des visiteurs... Pour plus d'informations, consultez les liens suivants :

Concours de tutoriels parrainé par Nexen.net

Par Emacs le mardi 29 janvier 2008 à 20:08

J'ai le plaisir et la joie de vous présenter le tout premier concours du site Apprendre-PHP.com. Peut-être le savez-vous déjà si vous suivez le site depuis sa création mais la première bougie pointe le bout de sa flamme. C'est donc à cette occasion que j'ai décidé de mettre en place ce concours afin de fêter comme il se doit cette première bonne année, et aussi remercier toutes les personnes qui y contribuent.

En quoi consiste ce concours ?

Le principe de ce premier concours est simple. Chaque participant devra proposer et mettre un oeuvre un tutoriel autour de PHP. Le choix du sujet est laissé à l'appréciation du participant à partir du moment qu'il présente un aspect de PHP5 (POO, PDO, MySQLI, SimpleXML, WebService, Frameworks...)...

L'objectif de ce concours pour Apprendre-PHP.com est bien évidemment d'alimenter la base de données avec les tutoriels de membres. A l'issue du concours et quelque soit le vainqueur, les meilleurs tutoriels auront la chance de figurer parmi les tutoriels officiels :) L'effort de participation sera récompensé par la présence des tutoriels sur le site.

Quels sont les lots à gagner ?

Nexen.net - portail francophone de l'actualité de PHPLe site Nexen.net, référence francophone de l'actualité de PHP, nous fait l'honneur d'être le sponsor de l'évènement. Je profite au passage de cette news pour les remercier et les féliciter de leur soutien car sans eux, ce concours n'aurait pas vu le jour.

C'est Damien Séguy, webmaster de Nexen.net et expert PHP, qui a pris la gracieuse initiative de nous offrir un exemplaire de son ouvrage « Sécurité PHP 5 / MySQL 5 » (Eyrolles). La préface de ce livre a été rédigée par Rasmus Lerdorf, père du langage PHP. Rien que ça !

Sécurité PHP 5 / MySQL de Damien Séguy et Philippe Gamache aux éditions EyrollesCet ouvrage est le guide ultime pour vous perfectionner au développement PHP / MySQL en vous apportant un ensemble de principes et de réponses liés à la sécurité des applications Web. Par delà des chapitres, « Sécurité PHP 5 / MySQL 5 » vous apprendra à protéger efficacement vos applications des utilisations malveillantes telles que les attaques XSS, CSRF, includes à distance, upload de fichiers, injections SQL, protections des mots de passe... Vous apprendrez également comment renforcer la sécurité de votre serveur de bases de données MySQL grâce notamment à la création d'utilisateurs aux droits limités. Cet ouvrage est donc une mine d'or d'informations primordiales que tout bon développeur PHP / MySQL doit avoir à portée de main.

Le vainqueur de ce petit challenge remportera donc ce superbe exemplaire de « Sécurité PHP 5 / MySQL 5 », qu'il recevra directement dans sa boîte aux lettres. Si cela peut vous rassurer, le livre attend son nouveau propriétaire tranquillement sur mon bureau.

Quant aux autres participants qui se seront investis dans cette aventure, nous publierons leur tutoriel sur le site aux côtés des autres tutoriels officiels. J'en profite également pour vous annoncer officiellement que des places de rédacteurs seront très certainement à pourvoir pour les plus agguerris et motivés d'entre vous :)

La date de fin du concours n'est pas encore arrêtée mais ce sera très probablement dans la dernière semaine du mois de février, quelques jours après la date anniversaire du site :)

Comment s'inscrire ?

C'est très simple ! L'inscription est bien sûr entièrement gratuite. Il suffit de vous inscrire au site (si ce n'est pas encore fait) et de déposer un message dans le sujet dédié au concours dans le forum. Votre message devra simplement contenir un petit mot indiquant que vous participerez au concours et quel sera le thème de votre tutoriel :)

Voir le sujet : Inscriptions au concours de rédaction de tutoriels

Le mot de la fin ?

Pour finir, je remercie encore toutes les personnes qui font vivre chaque jour ce site par leurs visites (quotidienne ou ponctuelles), leurs commentaires, leur soutien, leurs félicitations, leur bouche à oreilles... Je vous remercie donc VOUS, visiteurs (et membres) d'Apprendre-PHP.com.

Je remercie encore une fois la société Nexen qui se rend partenaire du concours et Anaska qui a permis de lancer le site en nous offrant 3 excellents tutoriels.

J'espère que cette première édition des concours d'Apprendre-PHP.com vous plaira et qu'elle remportera un franc succès auprès de la communauté PHP. Si tout se passe bien, d'autres concours verront très certainement le jour :)

PHP 4 est mort ! Longue vie à PHP 5 et 6 !

Par Emacs le jeudi 03 janvier 2008 à 20:08

Cette nouvelle année marque un tournant décisif dans l'histoire de PHP. Depuis le 01 janvier 2008, le développement de PHP 4 est abandonné au profit de PHP 5.3 et PHP 6. Rappelons-nous que la première version publique bêta de PHP4 date du 19 juillet 1999, soit 8 ans de bons et loyaux services. L'heure est venue de tourner la page et de laisser place aux nouvelles technologies.

C'est donc aujourd'hui que l'on apprend sur le blog de Derick Rethans et le site officiel de PHP, la sortie de la toute dernière version de PHP4 : PHP 4.4.8. Cette nouvelle et dernière release n'apporte rien de plus que la précédente mais corrige une petite dizaine de bugs et failles de sécurité. Il est bon de préciser que les réticents au passage à PHP 5 auront droit à un sursis supplémentaire de 7 mois puisque le team de développement de PHP s'engage a maintenir PHP 4.4.8 jusqu'au 08 août 2008. Jusqu'à cette date, seuls quelques patches de sécurité verront - peut-être - le jour. Passé cette date, PHP 4 sera officiellement déclaré comme terminé.

Rassurez-vous, PHP n'est pas prêt de s'arrêter en si bon chemin puisque la relève est bel et bien là. Il est dès aujourd'hui recommandé aux - nouveaux - développeurs PHP de passer directement à la dernière version stable (PHP 5.2.5) qui offre une multitude d'outils utiles aux développements d'applications web. Parmi eux, nous pouvons citer : PDO pour l'interfaçage avec les systèmes de bases de données relationnelles, Filter pour le traitement des données sensibles en provenance de l'extérieur, SimpleXML pour l'analyse de documents XML, le support de SOAP pour l'utilisation des webservices...

Quant aux nouvelles releases, la version stable PHP 5.3 est sur le point de voir le jour. Elle intègrera une partie des fonctionnalités de PHP 6, hormis le support de l'Unicode et le déploiement du cache d'opcode APC en natif. Les espaces de nom et MYSQLND (nouvelle génération de MySQL) feront donc leur apparition avec PHP 5.3.

Il ne nous reste plus qu'à attendre impatiemment les sorties officielles de PHP 5.3 et de PHP 6 et s'écrier " PHP 4 est mort ! Longue vie à PHP 5 ! Bienvenue PHP 6 ".

«  [1]  [2]  [3]  [4]  [5]  [6]  [7»