|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||||
|
Expert Confirmé
![]() Inscription : janvier 2010 Messages : 2 708 ![]() |
Salut à tous
L'idée que j'ai me semble impossible voir pas affaire, mais je pose quand même la question. Concernant la gestions des erreurs et exception, elle est pour le moment conçues pour des pages HTML, et ça fonctionne plutôt bien. Le problème, c'est d'avoir un retour d'erreur, ne serait-ce simpliste lorsqu'il s'agit d'images dynamique avec GD. Le problème est le même d'ailleurs pour les documents PDF (voir tout documents autre que du html). J'ai une classe Runfw_Exception qui est dérivée de Exception afin de personnaliser cette gestion des errreurs/exceptions. Puis coté de mon petit FrameWork maison, au niveau du core (du moteur) ce code (je simplifie) : Code :
Puis toutes erreurs de Php sera gérée par la méthode Runfw::errorHandler(), qui elle même la renvoie vers un Objet ErrorException, donc devient une exception, qui du coup sera traitée par Runfw::exceptionHandler(). Au niveau de ma classe GdImage (qui une sorte de matrice), je ne vois pas d'autres solution que, qu'en cas d'erreur (ou exception) de générer une image GD afin d'afficher l'erreur, donc en PNG. Du coup, j'ai créé une classe Runfw_Gd_Exception, et dans cette classe une méthode commune à Runfw_Exception : Runfw_Gd_Exception::afficherErreur(). C'est dans cette méthode ou je génère un PNG contenant le message d'erreur. Le problème, sans pour autant que ça le soit vraiment car j'ai une solution, je gère les erreur comme ceci : (dans un code quelconque) Code :
Code :
J'aurais aimé utilisé ce même code habituel pour catcher/attraper les erreurs, soit Runfw::exceptionHandler($e); et non : throw new Runfw_Gd_Exception(... etc ...) En somme, de gérer le cas Html/Gd/Pdf au niveau de Runfw::exceptionHandler(), donc de faire quelque part une alternative pour appeler la méthode afficherErreur selon le type de document. Ceci me semble impossible car en cas d'erreur ça devient une Exception, et pas une Runfw_GD_Exception. Je perds l'info finalement. Mais est ce possible ? Ce n'est pas à faire peut être, c'est farfelu, pas propre, etc ... ? Si vous avez une idée, sans tomber dans de grandes complexités, je suis preneur. (désolé pour la longueur, je ne vois pas comment faire plus court).
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20 Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra] |
||||||
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() Inscription : janvier 2010 Messages : 2 708 ![]() |
Mon problème n'a pas l'air de passionner les foules ... c'est la misère.
Bon, je mets résolu quand même car je me suis résolu à utiliser throw new Runfw_Gd_Exception(), tant pis. Ca fonctionne plutôt bien comme ça.
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20 Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra] |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com