错误报告级别:指定了在什么情况下,脚本代码中的错误(这里的错误是广义的错误,包括E_NOTICE注意、E_WARNING警告、E_ERROR致命错误等)会以错误报告的形式输出。
设置错误报告级别的方法:
1. 修改PHP的配置文件php.ini
这种方式设置error_reporting后,重启web服务器,就会永久生效。
这里以xampp集成软件包为例,打开配置文件php.ini,查看错误报告级别error_reporting的默认值,如下:
error_reporting=E_ALL & ~E_DEPRECATED & ~E_STRICT
意思是报告所有的错误,但除了E_DEPRECATED和E_STRICT这两种。
将其修改为:
error_reporting=E_ALL & ~E_NOTICE
意思是报告所有的错误,但除了E_NOTICE这一种。这也是最常用的错误报告级别,它不会报告注意类(如:使用了未定义的变量)的错误。
保存,重启web服务器后生效。
2. 使用error_reporting()函数
这种方式设置后,可以立即生效。但仅限于在当前脚本中的error_reporting()函数调用的后面区域。
int error_reporting ([ int
$level
] )参数可以是整型或对应的常量标识符,推荐使用常量的形式。返回值为当前位置处起作用的错误报告级别的值(整型值)。
下面列举一些错误报告级别:
值 常量 说明
1 E_ERROR 报告导致脚本终止运行的致命错误
2 E_WARNING 报告运行时的警告类错误(脚本不会终止运行)
4 E_PARSE 报告编译时的语法解析错误
8 E_NOTICE 报告通知类错误,脚本可能会产生错误
32767 E_ALL 报告所有的可能出现的错误(不同的PHP版本,常量E_ALL的值也可能不同)
error_reporting(E_ALL ^ E_NOTICE); // 除了E_NOTICE之外,报告所有的错误
error_reporting(E_ERROR); // 只报告致命错误
echo error_reporting(E_ERROR | E_WARNING | E_NOTICE); // 只报告E_ERROR、E_WARNING 和 E_NOTICE三种错误
注意:配置文件php.ini中display_errors的默认值为On,代表显示错误提示,如果设置为Off,就会关闭所有的错误提示。
相关推荐
在PHP中所有的报错信息可以用error_reporting()这个函数来设置: 它的参数有字符串和数字两种表示方法,共14个等级,但是呢,我看使用其他数字貌似也可以,起初我以为它指的是一定的报错区间,后来,终于发现了其中...
`error_reporting(E_ALL ^ E_NOTICE)` 是PHP中用于设置错误报告级别的函数调用,它用于控制PHP在执行脚本过程中如何处理和显示错误信息。在PHP中,错误分为多个级别,每种级别代表不同严重程度的问题。理解这个函数...
首先要知道error_reporting()函数是用来设置错误级别并返回当前级别的。它有14个错误级别,如下: 1 E_ERROR 致命的运行时错误。 错误无法恢复过来。脚本的执行被暂停 2 E_WARNING 非致命的运行时错误。 脚本的执行...
error_reporting函数的具体用法是通过设置不同的错误级别常量来实现的。PHP定义了一系列的错误级别常量,包括但不限于E_ERROR、E_WARNING、E_PARSE、E_NOTICE、E_CORE_ERROR、E_CORE_WARNING、E_COMPILE_ERROR、E_...
Laravel遵循PHP的错误级别,如E_ERROR、E_WARNING、E_NOTICE等。在生产环境中,通常只报告严重错误,而在开发环境中则应显示所有错误以便调试。 2. 错误处理: Laravel通过`app/Exceptions/Handler.php`文件来处理...
例如,首先通过`error_reporting`来设置希望捕获的错误级别,然后通过`set_error_handler`来自定义错误处理逻辑,比如记录日志、发送邮件通知等。 ```php // 设置错误报告级别 error_reporting(E_ALL & ~E_NOTICE);...
2. 《PHP中如何设置error_reporting错误报告级别》 - 唐志龙 - 博客园 3. 《解决PHP显示Warning和Notice等问题》 - sandea - 博客园 请根据你的实际环境和需求选择合适的方法,确保错误处理策略既保护了用户界面的...
例如,如果我们希望报告所有错误,可以设置`error_reporting(E_ALL)`。在生产环境中,通常会关闭`E_NOTICE`和`E_DEPRECATED`等较低级别的错误报告,以避免在日志中产生过多无关紧要的警告。 总的来说,PHP错误处理...
首先,`error_reporting`配置项用于设置错误报告的级别。推荐在开发环境中设置为E_ALL,这样可以捕获所有类型的错误,包括警告(warnings)、通知(notices)等,这对于调试和优化代码极其有用。而在生产环境中,...
在代码中动态设置错误级别时,可以使用error_reporting()函数,并根据当前的运行环境(如开发环境或生产环境)来决定报告哪些错误。例如,在开发环境下开启所有错误报告,而在生产环境下关闭NOTICE级别的错误报告,...
例如,可以使用`error_reporting()`函数来控制哪些错误应该被报告,并通过`ini_set()`函数设置错误报告级别。 然而,这种处理方式较为粗糙,无法提供足够的信息给开发者进行更细致的错误分析。因此,在某些情况下,...
此函数允许开发者指定希望PHP报告的错误级别。例如,下面的代码会报告除了`NOTICE`级别之外的所有错误: ```php error_reporting(E_ALL & ~E_NOTICE); ``` #### 错误级别常量 在设置错误级别时,需要了解每个错误...
如果你希望针对不同级别的错误使用不同的处理函数,可以为每种错误级别设置单独的错误处理器,如`set_error_handler('myError', E_USER_ERROR)`,`set_exception_handler('myWarning', E_USER_WARNING)`等。...
4. `error_reporting`: 它用于设置PHP应该报告哪种类型的错误。`E_ALL & ~E_NOTICE`表示报告所有错误,但不包括通知(Notice)级别的错误。 接着,我们来看`php-fpm.conf`配置文件。`php-fpm`(PHP FastCGI Process...
PHP 有多种错误级别,使用 error_reporting 函数可以设置适合的错误级别,以便更好地-debug 程序。 3. 使用正则表达式验证电子邮件的格式 使用正则表达式可以轻松地验证电子邮件的格式。在 PHP 中,可以使用 preg_...
3. 使用include包含自定义错误报告设置:可以在PHP文件的开始处使用include语句引入另一个文件,该文件中包含error_reporting(E_ALL&~E_NOTICE);的设置。这种方法相当于在程序中动态设置错误报告级别,和修改php.ini...
`error_reporting(2047)`设置所有错误报告,`E_ALL`也是表示报告所有错误。在`php.ini`中,可以通过`display_errors`和`error_reporting`来控制错误显示和报告的级别。 4. `echoprint()print_r()`: 这些是PHP中的...