[Résolu] Savoir qui appelle une méthode - Version imprimable +- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org) +-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38) +--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51) +--- Sujet : [Résolu] Savoir qui appelle une méthode (/showthread.php?tid=4115) Pages :
1
2
|
RE: Savoir qui appelle une méthode - My Hotel - 21-06-2009 OK, mais comment je fais à savoir quelle méthode a généré l'erreur, et a donc appelé ma méthode de log? Je suis sûr que c'est hyper simple en plus, mais je bloque RE: Savoir qui appelle une méthode - wild-D - 21-06-2009 tu regarde la pile; ce sera surement l'avant-dernière entrée (vu que la dernière ça sera je suppose ta fonction de log si j'ai bien compris ce que tu fais). ça te donnera dans quel context on a appelé ta fonction de log. RE: Savoir qui appelle une méthode - My Hotel - 21-06-2009 Oui c'est pas faux, j'ai compris. Je vais revoir ma méthode de log, mais au niveau conception, c'est vrai que c'est assez inutile. Merci beaucoup, pour moi c'est résolu RE: [Résolu]Savoir qui appelle une méthode - naholyr - 21-06-2009 Sinon au lieu d'appeler ta fonction tu lèves une exception, et tu log quelque part son __toString(), qui contient la pile d'appel Exemple : Code PHP :
Et si PHP était bien fait, toute erreur fatale mènerait à une exception au lieu d'une vieille fatal error poukrave inloggable, mais ce n'est pas le cas hélas RE: [Résolu]Savoir qui appelle une méthode - jo_link_noir - 04-07-2009 (21-06-2009, 09:51 PM)naholyr a écrit : Et si PHP était bien fait, toute erreur fatale mènerait à une exception au lieu d'une vieille fatal error poukrave inloggable, mais ce n'est pas le cas hélas J'avais lu un truc sur developpez.com : basculer les erreurs en exception ou avec ErrorException RE: [Résolu] Savoir qui appelle une méthode - wild-D - 04-07-2009 me semble que ça marche pas avec les erreurs fatales (on peut attraper que les erreurs que l'on peut attraper avec set_error_handler donc pas les erreurs fatales de compilation et autre truc du genre ) RE: [Résolu] Savoir qui appelle une méthode - jo_link_noir - 04-07-2009 Mince, en plus c'est marqué dans la doc >< Manuel PHP a écrit :Les types d'erreur suivants ne peuvent pas être gérés avec cette fonction : E_ERROR, E_PARSE, E_CORE_ERROR, E_CORE_WARNING, E_COMPILE_ERROR, E_COMPILE_WARNING ainsi que la plupart des E_STRICT d'un fichier lorsque set_error_handler() est appelé.Me semblais bizarre aussi que naholyr dise ça, en fait c'est moi qui est pas tout lu '^.^ |