PHP 7 Gestion des erreurs
PHP 7 nouvelles fonctionnalités
PHP 7 pour changer la mauvaise façon la plupart des rapports. Contrairement à mécanisme traditionnel d'erreur PHP 5 rapports, et maintenant la plupart des erreurs sont jetés comme une erreur d'exception.
Cette exception d'erreur peut être aussi normale que anormale capturé bloc try / catch. Si aucune correspondance bloc try / catch, appelez le gestionnaire d'exception (() enregistrée par le set_exception_handler) pour le traitement. Si vous n'êtes pas inscrit gestionnaire d'exception est traitée de façon traditionnelle: est rapporté comme une erreur fatale (Fatal Error).
Classe d'erreur ne se prolonge pas à partir de la classe d'exception, donc utilisez catch (Exception $ e) {...} Ce code est de ne pas saisir l'erreur. Vous pouvez attraper erreur avec un cran (Error $ e) {...} Ce code, ou gestionnaire d'exception enregistrée (set_exception_handler ()).
Erreur hiérarchie d'exceptions
- erreur
- ArithmeticError
- AssertionError
- DivisionByZeroError
- ParseError
- TypeError
- exception
- ...
Exemples
Exemples
MathOperations de classe
{
Protected $ n = 10;
// Opération de Remainder, le diviseur est 0, une exception est levée
fonction publique doOperation (): string
{
try {
$ value = $ this -> n % 0;
retourner la valeur de $;
} Catch (DivisionByZeroError $ e) {
return $ e -> getMessage () ;
}
}
}
$ MathOperationsObj = new MathOperations ();
print ($ mathOperationsObj -> doOperation ( ));
?>
La sortie de l'exécution du programme ci-dessus est la suivante:
Modulo by zero