PHP est un langage de script côté serveur largement utilisé, facile à apprendre et très flexible. Cependant, comme tous les langages de programmation, PHP présente également ses défauts et ses erreurs, telles que des erreurs de syntaxe et des erreurs de logique. Pendant le processus de développement et de débogage, il est crucial d’obtenir et de résoudre ces messages d’erreur en temps opportun. Cet article explique comment obtenir des informations sur les erreurs en PHP.
1. Activez les messages d'erreur PHP
En PHP, les messages d'erreur ne seront pas affichés par défaut. Vous devez configurer le fichier php.ini pour activer la sortie des messages d'erreur. Vous pouvez ouvrir le fichier php.ini et trouver les deux lignes clés suivantes :
display_errors = Off error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
Changez display_errors = Off
en display_errors = On
, puis modifiez error_reporting code > Ligne modifiée par : <code>display_errors = Off
改为display_errors = On
,然后将error_reporting
行更改为:
error_reporting = E_ALL
这将启用所有错误报告,包括所有错误级别。在开启错误信息后,PHP脚本中的每个错误都将在网页上输出,包括警告、提示信息以及致命错误。
二、获取最近的PHP错误信息
在PHP脚本中,可以使用PHP自带的error_get_last()
函数来获取最近发生的错误信息。该函数返回的是一个数组,包含错误的信息类型、消息和文件路径等。
下面是一个例子:
<?php echo $test; print_r(error_get_last()); ?>
在上面的代码中,$test
变量没有被定义,因此,这将导致一个致命错误。这个错误信息将作为最后一个错误被存储,然后通过error_get_last()
函数进行检索,输出结果如下所示:
Array ( [type] => 8 [message] => Undefined variable: test [file] => /var/www/html/test.php [line] => 2 )
三、注册错误处理程序
除了使用error_get_last()
函数之外,还可以通过注册错误处理程序来获取错误信息。PHP提供了一个set_error_handler()
函数,用于自定义PHP发生错误时的行为。该函数需要接收一个函数名称作为其参数,该函数可以被用来处理捕捉到的错误。
下面是一个例子:
<?php function error_handler($errno, $errstr, $errfile, $errline) { echo "Error: [$errno] $errstr - $errfile:$errline"; } set_error_handler("error_handler"); echo $test; ?>
在上面的代码中,我们定义了一个名为error_handler()
的函数来处理错误。然后将该函数名称传递给set_error_handler()
函数进行注册。当变量$test
Error: [8] Undefined variable: test - /var/www/html/test.php:7
error_get_last()
de PHP pour obtenir le dernier message d'erreur. Cette fonction renvoie un tableau contenant le type d'informations d'erreur, le message, le chemin du fichier, etc. 🎜🎜Voici un exemple : 🎜rrreee🎜Dans le code ci-dessus, la variable $test
n'est pas définie, cela provoquera donc une erreur fatale. Ce message d'erreur sera stocké comme dernière erreur puis récupéré via la fonction error_get_last()
. Le résultat de sortie est le suivant : 🎜rrreee🎜 3. Enregistrez le gestionnaire d'erreurs 🎜🎜En plus d'utiliser error_handler()
pour gérer les erreurs. Transmettez ensuite le nom de la fonction à la fonction set_error_handler()
pour l'enregistrement. Cela entraînera une erreur fatale lorsque la variable $test
n'est pas définie. Le gestionnaire d'erreur détectera l'erreur et affichera le résultat suivant : 🎜rrreee🎜 4. Conclusion 🎜🎜Dans le processus de développement de scripts PHP, il est crucial d'obtenir et de gérer les informations sur les erreurs en temps opportun. Diverses méthodes, de l'activation des messages d'erreur PHP à l'obtention des derniers messages d'erreur PHP, en passant par l'utilisation de gestionnaires d'erreurs enregistrés, peuvent nous aider à mieux gérer et déboguer les erreurs dans le développement PHP. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!