codeigniter
La gestion des erreurs
Recherche…
Introduction
CodeIgniter vous permet de générer des rapports d'erreur dans vos applications en utilisant les fonctions décrites ci-dessous. En outre, il dispose d'une classe de journalisation des erreurs qui permet d'enregistrer les messages d'erreur et de débogage en tant que fichiers texte.
show_error ()
Cette fonction affichera le message d'erreur fourni à l'aide du modèle d'erreur suivant:
Chemin d'accès - application/errors/error_general.php
Le paramètre facultatif $ status_code détermine le code d'état HTTP à envoyer avec l'erreur.
Syntaxe
show_error($message, $status_code, $heading = 'An Error Was Encountered')
Paramètres:
-
$message (mixed)
- Message d'erreur -
$status_code (int)
- Code d'état de la réponse HTTP -
$heading (string)
- En-tête de page d'erreur
Type de retour: vide
La source
show_404 ()
Cette fonction affichera le message d'erreur 404 fourni à l'aide du modèle d'erreur suivant:
Chemin d'accès - application/errors/error_404.php
La fonction attend que la chaîne qui lui est transmise soit le chemin du fichier vers la page introuvable. Notez que CodeIgniter affiche automatiquement 404 messages si les contrôleurs ne sont pas trouvés.
CodeIgniter enregistre automatiquement tous les show_404()
. Si vous définissez le deuxième paramètre facultatif sur FALSE, la journalisation sera ignorée.
Syntaxe
show_404($page = '', $log_error = TRUE)
Paramètres:
- $ page (chaîne) - Chaîne d'URI
- $ log_error (bool) - Faut-il enregistrer l'erreur?
Type de retour: vide
La source
log_message ()
Cette fonction vous permet d'écrire des messages dans vos fichiers journaux. Vous devez fournir l'un des trois "niveaux" dans le premier paramètre, en indiquant le type de message (debug, error, info), avec le message lui-même dans le deuxième paramètre.
Exemple:
if ($some_var == "") {
log_message('error', 'Some variable did not contain a value.');
}
else {
log_message('debug', 'Some variable was correctly set');
}
log_message('info', 'The purpose of some variable is to provide some value.');
Syntaxe
log_message($level, $message);
Paramètres:
-
$level (string)
- Niveau de journalisation: 'error', 'debug' ou 'info' -
$message (string)
- Message à enregistrer
Type de retour: vide
Il existe trois types de messages:
- Messages d'erreur Ce sont des erreurs réelles, telles que des erreurs PHP ou des erreurs utilisateur.
- Messages de débogage Ce sont des messages qui aident au débogage. Par exemple, si une classe a été initialisée, vous pouvez vous connecter en tant qu’information de débogage.
- Messages d'information Ce sont les messages les moins prioritaires, donnant simplement des informations sur certains processus. CodeIgniter ne génère pas de messages d'information en mode natif, mais vous pouvez le faire dans votre application.
Remarque: Pour que le fichier journal soit réellement écrit, les "journaux" du dossier doivent être accessibles en écriture. De plus, vous devez définir le "seuil" pour vous connecter à l'
application/config/config.php
. Vous pouvez, par exemple, uniquement consigner les messages d'erreur et non les deux autres types. Si vous le définissez sur zéro, la journalisation sera désactivée.