Envoyer le gestionnaire d'erreur standard PHP dans les cordes
Par Nicolas SUPRIN, mardi 13 septembre 2011 à 15:42 | PHP | #131 | rss
Et travailler en full exceptions !
Comme vu dans doc PHP, voici un moyen de travailler de façon hyper classe et hyper propre, afin que chaque erreur PHP lève une exeption catchable.
Code
Incluez ceci dans un auto preprend file quelconque :
<?php function exception_error_handler($errno, $errstr, $errfile, $errline ) { if ((error_reporting()) & $errno) { throw new ErrorException($errstr, 0, $errno, $errfile, $errline); } } set_error_handler("exception_error_handler"); ?>
Exemple
<?php try { fopen('unknowed_file', 'r'); } catch (Exception $oFault) { echo $oFault->getMessage(); } ?>
Un exemple simple qui vaut bien des discours !
Il est juste à noter que malheureusement, ça ne fait pas de miracle dans le cas d'une instruction @robasée, aucune exception n'est levée dans la cas ou une erreur se produit dans @fopen par exemple... !





Aucun commentaire pour le moment.
Aucun trackback.
Les trackbacks pour ce billet sont fermés.
Les commentaires pour ce billet sont fermés.