错误报告

错误代码 错误级别
E_ERROR
严重错误,不可恢复。例如内存不足、位置异常或类重复声明错误
E_WARNING
一个经常发生的错误类型。表示一些操作错误。例如丢失函数参数,连接数据库失败,除数为0等错误。
E_PARSE
编译时发生的解析错误,会导致在PHP执行前退出。意味着如果一个文件因为解析错误运行失败,程序将停止运行。

E_NOTICE
运行代码在操作一些未知的动作,例如读取未定义的变量。
E_USER_ERROR
用户定义错误导致PHP退出执行。用户定义错误(E_USER_*)不是来自PHP本身,而是包含在脚本中。由trigger_error()函数生成
E_USER_WARNING
用户定义错误不会导致PHP退出执行。脚本可以使用它来通知一个执行失败,执行失败PHP也会用E_WARNING来通知。由trigger_error()函数生成
E_USER_NOTICE
用户定义的通告可以用来在脚本中可能存在错误。由trigger_error()函数生成

E_CORE_ERROR
内部错误,扩展启动失败导致的,会导致PHP运行退出。
E_COMPILE_ERROR
编译错误,与E_PARSE不同,这个错误会导致PHP运行退出。
E_WARNING_ERROR
编译时的警告,可能是使用者发生语法错误。
E_STRICT
错误级别是唯一不包含在E_ALL常量中。这是为了让PHP4到PHP5的迁移更加容易;你可以在PHP5软件系统中运行PHP4代码。

1.
Sets which PHP errors are reported
int error_reporting ( [int level] )
The error_reporting() function sets the error_reporting directive at
runtime. PHP has many levels of errors, using this function sets that
level for the duration (runtime) of your script. 
例如error_reporting ( 0 );//不报告错误
参数可以配备 | ~ & 或非与使用
error_reporting (E_ALL & ~E_NOTICE);
error_reporting (E_ALL | E_STRICT);

2.
Generates a user-level error/warning/notice message
这个函数是一种通过编程在php脚本中生成一个错误的方法。
bool trigger_error ( string error_msg [, int error_type] )
error_type可以取E_USER_ERROR和E_USER_WARNING和E_USER_NOTICE
if (assert($divisor == 0)) {
    trigger_error("Cannot divide by zero", E_USER_ERROR);
}

3.使用@来抑制错误,@符号只能处理表达式。不能在条件语句,循环语句,函数定义等之前使用@符号

4.创建自定义的错误处理程序
用于指定在出现错误时要调用的函数
Sets a user-defined error handler function 
mixed set_error_handler ( callback error_handler [, int error_types] );
例子
function myErrorHandler($errno, $errstr, $errfile, $errline)
{}
set_error_handler("myErrorHandler");//php生成错误时(包括trigger_error生成的),将会调用myErrorHandler函数

时间: 2024-08-07 22:15:36

错误报告的相关文章

Windows 关闭错误报告/弹窗

项目中需要第三方一个后台的第三方应用, 这就需要守护进程, 保证他一直在运行, 然而应用并不稳定. 在Win7,Win8,Win10中某些程序出错会出现Windows错误报告, 并且暂停应用不会退出, 这时候进程守护就会失效. 所以需要把错误报告弹窗关闭, 让程序发生错误后直接退出.  这样才能使守护进程生效. 一:注册表关闭弹窗(这个方法即可, 另一个可以顺便) 1.使用组合键"Win+R"打开运行窗口并输入"regedit"打开注册表编辑器窗口; 2.打开注册表

第26章 错误报告与应用程序恢复

26.1 Windows错误报告控制台 26.2 可编程了的Windows错误报告 26.3 对进程中的所有的问题报告进行定制 26.4 问题报告的创建与定制 26.4.1 创建一个自定义的问题报告 26.4.2设置报告参数:WerReportSetParameter 26.4.3 将小型转储文件放入报告:WerReportAddDump 26.4.4 将任意文件放入报告:WerReportAddFile 26.4.5 修改对话框文本:WerReportSetUIOption 26.4.6 提交

PHP错误报告级别

error_reporting = E_ALL & ~E_NOTICE ; 错误报告级别是位字段的叠加,推荐使用 E_ALL | E_STRICT ; 1 E_ERROR 致命的运行时错误 ; 2 E_WARNING 运行时警告(非致命性错误) ; 4 E_PARSE 编译时解析错误 ; 8 E_NOTICE 运行时提醒(经常是bug,也可能是有意的) ; 16 E_CORE_ERROR PHP启动时初始化过程中的致命错误 ; 32 E_CORE_WARNING PHP启动时初始化过程中的警告(

Dynamics CRM2016 关闭错误报告弹框提示

在之前的版本中错误报告的弹框提示是可以在隐私首选项中设置关闭的,如下图所示 但是在2016中这个设置没了 有人说在右上角的选项中设置,但那个只能是设置个人的无法修改系统级别的.在系统中找了半天还是没有找到可以设置的地方,既然前台没有入口那只有打后台的主意了,打开组织数据库中的Organization表,将ReportScriptErrors字段的值修改为3(默认值是0)即为关闭.

php页面禁用错误报告

//禁用错误报告 error_reporting(0);#or ini_set("display_errors","Off"); //开启错误报告 ini_set("display_errors","On");#or error_reporting(E_ALL); 在用php做网站开发的时候, 为防止用户看到错误信息,而出现的不友好界面.故一般性会在php.ini里设置:display_errors = Off;不过在开发的时

AD6电气规则错误报告中英文对照

Ⅰ:Error Reporting 错误报告 A:Violations Associated with Buses 有关总线电气错误的各类型(共 12 项) ◆ bus indices out of range 总线分支索引超出范围 ◆ Bus range syntax errors 总线范围的语法错误 ◆ Illegal bus range values 非法的总线范围值 ◆ Illegal bus definitions 定义的总线非法 ◆ Mismatched bus label orde

收集错误报告

程序总是难以避免地会出现各种问题,严重时甚至崩溃退出.现在很多应用程序在出现崩溃时会收集相关错误信息,发送错误报告,方便开发人员定位并修复问题. 最近在实际工作中也遇到了类似的问题,客户端通过PLSQL等工具连接到远程数据库服务器做运维操作,出于安全性的考虑,这里客户端并不是直接连到服务器,而是先连到类似于跳板机的设备,再由跳板机连接真实的服务器,数据流向如下图所示. 现在需要在跳板机处将客户端输入的命令,即待执行的SQL语句提取出来.对通信过程抓包会发现,通信数据并非明文,但有一定的规律可循,

C语言中的errno(错误报告)用法

C语言标准库中的错误报告用法有三种形式. 1.errno errno在<errno.h>头文件中定义,如下 #ifndef errno extern int errno; #endif 外部变量errno保存库程序中实现定义的错误码,通常被定义为errno.h中以E开头的宏, 所有错误码都是正整数,如下例子 # define EDOM 33 /* Math argument out of domain of function. */ EDOM的意思是参数不在数学函数能接受的域中,稍后的例子中用

C和指针 第十五章 错误报告perror和exit

15.1 错误报告 perror 任何一种程序都存在出错的可能,包括系统的函数库,当出现错误时,系统提示发生错误,标准库函数在一个外部整型变量中保存错误代码,然后把错误代码传给用户程序,提示错误原因.perror简化了向用户报告特定错误过程. void perror(char const * message); perror,接受字符串,先打印出这个字符串,然后在后面跟一个分号空格,然后打印出解释errno的错误代码的信息 #include <stdio.h> #include <err

PHP错误报告级别及调整方法

运行PHP脚本时,PHP解析器会尽其所能能报告它遇到的问题.在PHP中错误报告的处理行为,都是通过PHP的配置文件php.ini中有关的配置指令确定的.另外PHP的错误报告有很多种级别,可以根据不同的错误报告级别提供对应的调试方法.一旦把PHP设置成呈现出发生了哪些错误,你可能想调整错误报告的级别.在下表中列出了PHP中大多数的错误报告级别. 如果开发人员希望在PHP脚本中,遇到表中的某个级别的错误时,将错误消息报告给他,则必须在配置文件php.ini中,将display_errors指令的值设