PHP 是一门动态的服务器端编程语言,很多网站都是使用它来编写的。当 PHP 代码出现错误时,有时候我们会看到一些奇怪的错误信息,但是这些信息并不十分明确。幸运的是,PHP 提供了一些设置可以帮助我们显示更详细的错误信息,这篇文章将会介绍如何显示 PHP 报错信息。
要显示 PHP 报错信息,需要两个基础步骤。
可以使用一些 PHP 内置函数来输出报错信息。和其他语言类似,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) 。
在设置输出报错信息级别之后,我们还需要打开相应配置文件中的一个选项,才能使得错误信息显示在浏览器上。
在 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 报错信息。
首先,我们需要设置 PHP 的输出级别。在 index.php 的开头,加入以下代码:
<?php ini_set('display_errors', 'On'); error_reporting(E_ALL); ?>
这将会打开 PHP 的错误信息显示,同时设置输出所有错误类型。在添加以上代码后,我们再次访问该页面时应该会看到详细的错误信息。
显示出的错误信息类似于以下代码:
Fatal error: Call to undefined function test() in /path/to/your/file.php on line 2
上面的报错信息向我们展示了一条极其详细的错误信息,包括:文件路径,文件名,行号以及错误信息。此时,我们就可以直接复制相应的错误信息,并将其发送给开发人员或者进行相应的处理。
以上是一个简单的方法,我们了解到如何设置 PHP 的报错信息输出级别和在 PHP 配置文件中如何开启报错信息的显示。通过开启报错信息的显示,我们可以快速排查和解决 PHP 应用程序的错误。
虽然,在生产环境下不应该使用开启输出错误信息的方式来处理错误,但在调试和开发阶段中,开启 PHP 报错信息的输出可以更快地解决问题,提高开发效率。
以上是php如何显示报错信息(方法浅析)的详细内容。更多信息请关注PHP中文网其他相关文章!