Gérer les erreurs dans un script PHP Les fonctions PHP de gestion des erreurs

 PHP propose plusieurs fonctions permettant de gérer correctement les erreurs dans un script :

Fonctions de gestion des erreurs PHP
NomRôle
Source : ENI
error_reportingDéfinit les niveaux d'erreur qui sont affichés par PHP.
error_logEnvoie un message d'erreur vers une destination (fichier par exemple).
set_error_handlerIndique le nom d'une fonction utilisateur à employer comme gestionnaire d'erreurs.
restore_error_handlerRéactive l'ancien gestionnaire d'erreurs.
trigger_error user_errorDéclenche une erreur définie par le développeur (user_error est un alias de trigger_error).
error_get_lastRetourne des informations sur la dernière erreur rencontrée dans le script.

En complément, l'opérateur @, placé devant le nom d'une fonction, permet de supprimer l'affichage des messages générés, en cas d'erreur, dans la fonction.

Exemple

<?php
$fichier = @fopen('/tmp/infos.txt','r');
$texte = @fread($fichier,100);
@fclose($fichier);
?>


Lors de l'exécution de ce script, aucun message n'est affiché bien que le fichier demandé n'existe pas.

Si l'erreur provoque l'arrêt du script, l'utilisation de l'opérateur @ n'y change rien ; la page affichée est alors vide ou incomplète, et aucun message n'est affiché à l'utilisateur. Il convient donc de tester le résultat des fonctions, ou d'utiliser un gestionnaire d'erreurs, afin de contrôler le déroulement du programme et de réaliser les traitements nécessaires.