Menu

Gérer les erreurs php [Résolu/Fermé]

Utilisateur anonyme - 9 août 2011 à 15:40 - Dernière réponse :  Utilisateur anonyme
- 10 août 2011 à 12:55
Bonjour,
Je voudrai savoir, si il est possible, si une erreur en php se produit, d'effectuer une action (en faite, ce que je veux faire, c'est d'enregistrer l'erreur dans la bdd). Si oui, merci de me dire comment.

Merci d'avance

Il vaut mieux demander de l'aide à un grand groupe de personnes que celui d'un informaticien.
Afficher la suite 

4 réponses

Utilisateur anonyme - 9 août 2011 à 15:49
0
Merci
Bonjour,

En PHP 5 on peut transformer une erreur en exception

// Gestionnaire d'erreur PHP fabriquant un ErrorException
function exception_error_handler($errno, $errstr, $errfile, $errline ) {
throw new ErrorException($errstr, 0, $errno, $errfile, $errline);
}

// Remplaement du gestionnaire d'erreur standard par notre gestionnaire d'exceptions
set_error_handler("exception_error_handler");

// Vérification du fonctionnement
try {
    echo 1/0;
} catch(ErrorException $e) {
    echo $e->getMessage();
}


Donc avec un try catch on peut gérer...

Sinon la bonne vielle méthode avec l'opérateur @

if ($file = @fopen('...','r') {
} else {
// gestion d'erreur
}
Utilisateur anonyme - 9 août 2011 à 16:45
Merci, je vais essayer
Utilisateur anonyme - 9 août 2011 à 16:57
C'est pas ce que je veux, car ça arrête l'exécution du script, pour des erreurs, qui normalement, n'arrête pas le script.
Utilisateur anonyme - 10 août 2011 à 12:55
Cette méthode n'arrête pas le script, sauf si vous mettez un exit dans la partie gestion d'erreur.