zzarbi a écrit :Tu ne sembles pas avoir compris... Je parle d'un template réalisé avec Smarty, d'un code PHP qui marche très bien, et d'une fatal error au runtime parce qu'il y a une erreur dans le template. Il faudra que je retrouve ça dans le svn pour vous montrer que non Smarty n'est pas «error-proof» vous avez l'air d'en douter :lol:naholyr a écrit :Tu as de la chance :lol: le mien m'a fait sorti X fois des Fatal Error… Et bonjour pour aller débugger du Smarty… Il faut aller chercher l'erreur dans le PHP auto-généré, afin de remonter vers l'erreur dans le template, et vue la gueule du PHP auto-généré je te souhaite de ne jamais aller y faire un tour.Heu certes on peut avoir des erreurs mais il est inutile d'aller débugger le code que smarty génère, il faut débugger ton code... Enfin ce qu'il le fait bugger... Imaginons que tu as un moteur à essence, si tu met du diesel ça va pas marcher, mais tu va pas aller réparer le moteur, lui il fonctionne normalement... O_o Y a pas plus logique
Si mon designer introduit une Fatal Error dans le template en PHP, cela ne concernera que la page où le template est utilisé, ni mieux ni moins bien que pour Smary
Il faut comprendre que Smarty convertit un template en code PHP, et fait ensuite un simple include (donc il n'est pas moins au même niveau d'exécution que l'exemple que j'avais donné avec PHP en langage de template). Sauf que des fois il s'emmêle dans la génération de son code, et on se retrouve avec des erreurs joyeuses, et bien difficiles à remonter
Concernant PEAR c'est vrai qu'on peut dicerner en fait 3 catégories :
- Les «briques élémentaires» (PHPDocumentor, Smarty, PHPMailer, etc… qu'on «branche» souvent à un projet sous forme de «plugin» ou «module».
- Les «frameworks» complets (Symfony, Copix, Zend - encore que...) qui offrent tout un cadre de travail constitué de briques, d'outils d'aide au développement, et d'un environnement de base pour guider les étapes de développement.
- Les «bibliothèques» qui sont entre les deux, un rassemblement de tant de briques qu'on pourrait penser qu'il s'agit d'un framework, mais il manque les outils d'aide et l'environnement de base pour guider.
La nuance est tout de même bien floue, et pourquoi classerait-on PEAR au rang de bibliothèque tout en laissant le ZF au rang de framework ?
Pour en revenir aux frameworks proprement dit, je pense qu'on pourrait tous se poser ce genre de questions :
- Avez-vous peur d'utiliser un framework ? Pourquoi ?
- En utilisez-vous un ? Lequel ? Pourquoi ?
- Quels sont les critères déterminants dans le choix d'un framework ?
- Des expériences concrètes des avantages d'un framework ?
- Des expériences concrètes des inconvénients d'un framework ?
Cela pourrait probablement nous aider à mieux cerner les avis les uns des autres
Ressources [PHP][MySQL][prototype.js]