Maison  >  Article  >  développement back-end  >  Comment afficher les informations d'erreur en php (une brève analyse de la méthode)

Comment afficher les informations d'erreur en php (une brève analyse de la méthode)

PHPz
PHPzoriginal
2023-04-11 10:43:543088parcourir

PHP est un langage de programmation dynamique côté serveur et de nombreux sites Web sont écrits en l'utilisant. Lorsqu'une erreur se produit dans le code PHP, nous verrons parfois des messages d'erreur étranges, mais ces messages ne sont pas très clairs. Heureusement, PHP fournit certains paramètres qui peuvent nous aider à afficher des informations d'erreur plus détaillées. Cet article explique comment afficher les informations d'erreur PHP.

Étapes de base

Pour afficher les messages d'erreur PHP, deux étapes de base sont requises.

1. Définir la sortie des messages d'erreur dans le code

Vous pouvez utiliser certaines fonctions intégrées de PHP pour afficher des messages d'erreur. Semblable à d'autres langages, les instructions echo() et print() de PHP peuvent être utilisées pour afficher certains messages texte. Cependant, ils ne peuvent pas afficher de messages d'erreur PHP. Par conséquent, nous devons utiliser la fonction error_reporting() fournie par PHP. echo()print() 语句可以被用来输出一些文本消息。但是,它们无法输出 PHP 报错信息。所以,我们需要使用 PHP 提供的 error_reporting() 函数。

PHP 提供了一个叫作 error_reporting() 的函数,可以用来控制 PHP 报错信息的输出级别。error_reporting() 函数能够返回当前报错信息输出级别,并且可以用一个整数参数来设置您需要的输出级别。

接下来我们看一个示例代码:

<?php
error_reporting(E_ALL); // 设置输出所有的错误信息  
?>

在这个示例中,我们使用了 error_reporting() 函数来设置输出所有错误信息。请注意,在 PHP 中,E_ALL 是一个预定义常量,它包含了所有错误类型的标志位(1)。当我们使用 E_ALL 这个常量时,我们告诉 PHP 输出所有错误信息。

还可以使用 error_reporting() 函数来输出 PHP 报错信息的更精准的级别。例如,E_ERROR (1) 、E_WARNING (2)、E_PARSE (4)、E_NOTICE (8)、E_CORE_ERROR (16)、E_CORE_WARNING (32)、E_COMPILE_ERROR (64)、E_COMPILE_WARNING (128)、E_USER_ERROR (256)、E_USER_WARNING (512) 或 E_USER_NOTICE (1024) 。

2. 在 PHP 配置文件中打开显示报错信息

在设置输出报错信息级别之后,我们还需要打开相应配置文件中的一个选项,才能使得错误信息显示在浏览器上。

在 PHP 配置文件中,有一个叫作 display_errors 的选项,可以控制是否在浏览器里显示 PHP 报错信息。这个选项的默认值是 Off,也就是不会在浏览器中输出错误信息。

我们可以通过修改 php.ini 文件来改变这个选项的值。如果您正在使用的是共享主机,那么您无法修改此文件。

在 php.ini 文件或者 .htaccess 文件中,添加以下代码可以打开 display_errors,使得 PHP 报错信息可以在浏览器中直接显示出来。

display_errors = on

在 php.ini 打开 display_errors 配置项后,您可以访问错误发生的页面,看到详细了错误信息。但是,对于灾难性发生的错误,您的网站可能会有致命的后果。所以,我们建议您打印出来错误信息并妥善处理。

在 PHP 中,我们可以使用以下函数输出错误信息:

  • var_dump() - 打印变量,包括类型、字符串长度和值。
  • print_r() - 打印关于变量的易于理解的信息。
  • die()exit()- 停止脚本的执行并输出一条消息。

案例分析

假设您的网站是使用 PHP 开发的,其中有一个页面index.php

PHP fournit une fonction appelée error_reporting(), qui peut être utilisée pour contrôler le niveau de sortie des informations d'erreur PHP. La fonction error_reporting() peut renvoyer le niveau de sortie actuel du message d'erreur et vous pouvez utiliser un paramètre entier pour définir le niveau de sortie dont vous avez besoin.

Regardons ensuite un exemple de code :

<?php
ini_set(&#39;display_errors&#39;, &#39;On&#39;);
error_reporting(E_ALL);
?>
Dans cet exemple, nous utilisons la fonction error_reporting() pour configurer tous les messages d'erreur à afficher. Veuillez noter qu'en PHP, E_ALL est une constante prédéfinie qui contient le bit indicateur (1) pour tous les types d'erreurs. Lorsque nous utilisons la constante E_ALL, nous disons à PHP d'imprimer tous les messages d'erreur.

Vous pouvez également utiliser la fonction error_reporting() pour générer un niveau plus précis d'informations sur les erreurs PHP. Par exemple, E_ERROR (1), E_WARNING (2), E_PARSE (4), E_NOTICE (8), E_CORE_ERROR (16), E_CORE_WARNING (32), E_COMPILE_ERROR (64), E_COMPILE_WARNING (128), E_USER_ERROR (256), E_USER_WARNING ( 512 ) ou E_USER_NOTICE (1024).

2. Activer l'affichage des messages d'erreur dans le fichier de configuration PHP

Après avoir défini le niveau des messages d'erreur de sortie, nous devons également ouvrir une option dans le fichier de configuration correspondant pour permettre l'affichage du message d'erreur sur le navigateur.

Dans le fichier de configuration PHP, il existe une option appelée display_errors, qui peut contrôler s'il faut afficher les messages d'erreur PHP dans le navigateur. La valeur par défaut de cette option est Off, ce qui signifie qu'aucun message d'erreur ne sera affiché au navigateur.

Nous pouvons changer la valeur de cette option en modifiant le fichier php.ini. Si vous utilisez un hébergement mutualisé, vous ne pouvez pas modifier ce fichier. 🎜🎜Dans le fichier php.ini ou .htaccess, ajoutez le code suivant pour activer display_errors, afin que les messages d'erreur PHP puissent être affichés directement dans le navigateur. 🎜
Fatal error: Call to undefined function test() in /path/to/your/file.php on line 2
🎜Après avoir ouvert l'élément de configuration display_errors dans php.ini, vous pouvez visiter la page où l'erreur s'est produite et voir les informations détaillées sur l'erreur. Cependant, lorsqu’un problème catastrophique se produit, cela peut avoir des conséquences fatales pour votre site Web. Par conséquent, nous vous recommandons d’imprimer le message d’erreur et de le gérer correctement. 🎜🎜En PHP, nous pouvons utiliser les fonctions suivantes pour afficher des informations d'erreur : 🎜
  • var_dump() - Imprimer les variables, y compris le type, la longueur de la chaîne et la valeur.
  • print_r() - Imprime des informations lisibles par l'homme sur une variable.
  • die() ou exit() - arrête l'exécution du script et génère un message.
🎜Analyse de cas🎜🎜Supposons que votre site Web soit développé en PHP et qu'il existe une page index.php. Pour certaines raisons, des erreurs se produisent et vous ouvrez cette page. . Je vois une page blanche vierge et aucun message d'erreur. Ici, nous dépannons la page et visualisons et affichons les messages d'erreur PHP. 🎜🎜Tout d’abord, nous devons définir le niveau de sortie de PHP. Au début de index.php, ajoutez le code suivant : 🎜rrreee🎜Cela activera l'affichage des messages d'erreur de PHP et configurera la sortie de tous les types d'erreurs. Après avoir ajouté le code ci-dessus, nous devrions voir des messages d'erreur détaillés lorsque nous visiterons à nouveau la page. 🎜🎜Le message d'erreur affiché est similaire au code suivant : 🎜rrreee🎜Le message d'erreur ci-dessus nous montre un message d'erreur extrêmement détaillé, comprenant : le chemin du fichier, le nom du fichier, le numéro de ligne et le message d'erreur. À ce stade, nous pouvons directement copier les informations d'erreur correspondantes et les envoyer au développeur ou les gérer en conséquence. 🎜🎜Résumé🎜🎜Ce qui précède est une méthode simple. Nous avons appris comment définir le niveau de sortie des messages d'erreur de PHP et comment activer l'affichage des messages d'erreur dans le fichier de configuration PHP. En activant l'affichage des messages d'erreur, nous pouvons rapidement dépanner et résoudre les erreurs d'application PHP. 🎜🎜Bien que l'activation de la sortie des messages d'erreur ne doive pas être utilisée pour gérer les erreurs dans un environnement de production, dans les étapes de débogage et de développement, l'activation de la sortie des messages d'erreur PHP peut résoudre les problèmes plus rapidement et améliorer l'efficacité du développement. 🎜

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn