PHP之Error与Logging函数讲解
PHP Error 和 Logging 简介
error 和 logging 函数允许你对错误进行处理和记录。
error 函数允许用户定义错误处理规则,并修改记录错误的方式。
logging 函数允许用户对应用程序进行日志记录,并把日志消息发送到电子邮件、系统日志或其他的机器。
安装
error 和 logging 函数是 PHP 核心的组成部分。无需安装即可使用这些函数。
PHP Error 和 Logging 函数
PHP:指示支持该函数的最早的 PHP 版本。
函数 | 描述 | PHP |
---|---|---|
debug_backtrace() | 生成 backtrace。 | 4 |
debug_print_backtrace() | 输出 backtrace。 | 5 |
error_get_last() | 获得最后发生的错误。 | 5 |
error_log() | 向服务器错误记录、文件或远程目标发送一个错误。 | 4 |
error_reporting() | 规定报告哪个错误。 | 4 |
restore_error_handler() | 恢复之前的错误处理程序。 | 4 |
restore_exception_handler() | 恢复之前的异常处理程序。 | 5 |
set_error_handler() | 设置用户自定义的错误处理函数。 | 4 |
set_exception_handler() | 设置用户自定义的异常处理函数。 | 5 |
trigger_error() | 创建用户自定义的错误消息。 | 4 |
user_error() | trigger_error() 的别名。 | 4 |
PHP Error 和 Logging 常量
PHP:指示支持该常量的最早的 PHP 版本。
值 | 常量 | 描述 | PHP |
---|---|---|---|
1 | E_ERROR | 致命的运行时错误。错误无法恢复。脚本的执行被中断。 | |
2 | E_WARNING | 非致命的运行时错误。脚本的执行不会中断。 | |
4 | E_PARSE | 编译时语法解析错误。解析错误只应该由解析器生成。 | |
8 | E_NOTICE | 运行时提示。可能是错误,也可能在正常运行脚本时发生。 | |
16 | E_CORE_ERROR | 由 PHP 内部生成的错误。 | 4 |
32 | E_CORE_WARNING | 由 PHP 内部生成的警告。 | 4 |
64 | E_COMPILE_ERROR | 由 Zend 脚本引擎内部生成的错误。 | 4 |
128 | E_COMPILE_WARNING | 由 Zend 脚本引擎内部生成的警告。 | 4 |
256 | E_USER_ERROR | 由于调用 trigger_error() 函数生成的运行时错误。 | 4 |
512 | E_USER_WARNING | 由于调用 trigger_error() 函数生成的运行时警告。 | 4 |
1024 | E_USER_NOTICE | 由于调用 trigger_error() 函数生成的运行时提示。 | 4 |
2048 | E_STRICT | 运行时提示。对增强代码的互用性和兼容性有益。 | 5 |
4096 | E_RECOVERABLE_ERROR | 可捕获的致命错误。(参阅 set_error_handler()) | 5 |
8191 | E_ALL | 所有的错误和警告,除了 E_STRICT。 | 5 |
PHP之Error与Logging函数讲解的更多相关文章
- PHP Error 和 Logging 函数
PHP Error 和 Logging 函数 PHP Error 和 Logging 简介 Error 和 Logging 函数允许您对错误进行处理和记录. Error 函数允许用户定义错误处理规则, ...
- avascript中的this与函数讲解
徐某某 一个半路出家的野生程序员 javascript中的this与函数讲解 前言 javascript中没有块级作用域(es6以前),javascript中作用域分为函数作用域和全局作用域.并且,大 ...
- Python中高阶函数讲解
高阶函数讲解 1. 常规高阶函数 递归函数 格式:def func_name(variable): '''__doc__'''#函数的说明文档 if 条件表达式:#限制递归退出值 pass retur ...
- python ---split()函数讲解
python ---split()函数讲解 split中文翻译为分裂. 在python用于分割字符串使用. split()就是将一个字符串分裂成多个字符串组成的列表. split()可以传入参数,也可 ...
- 面转栅格之ERROR 999999:执行函数时出错
今天进行矢量面转栅格的操作时,总是出现ERROR 999999:执行函数时出错,如下图所示: 刚开始以为是栅格保存的路径太长的问题,后来发现是矢量面的路径问题,我的矢量面是放在自建的图层组下面,如下图 ...
- MySql UNIX_TIMESTAMP和FROM_UNIXTIME函数讲解
MySql UNIX_TIMESTAMP和FROM_UNIXTIME函数讲解 by:授客 QQ:1033553122 1. unix_timestamp(date)将时间转换为时间戳,如果参数为空,则 ...
- Spark Streaming中的操作函数讲解
Spark Streaming中的操作函数讲解 根据根据Spark官方文档中的描述,在Spark Streaming应用中,一个DStream对象可以调用多种操作,主要分为以下几类 Transform ...
- linux xfs文件系统无法用readdir获取dirent文件类型d_type则用stat获取暨stat函数讲解
stat函数讲解 表头文件: #include <sys/stat.h> #include <unistd.h>定义函数: int stat ...
- 采坑复盘:logging日志能用封装后的函数来打日志,发现filename一直显示封装logging函数的方法所在的文件名
问题: logging日志能用封装后的函数来打日志,发现filename一直显示封装logging函数的方法所在的文件名 原因: logging记录的是第一个函数执行所在的文件,那用封装的函数,首先执 ...
随机推荐
- (转)为首次部署MongoDB做好准备:容量计划和监控
如果你已经完成了自己新的MongoDB应用程序的开发,并且现在正准备将它部署进产品中,那么你和你的运营团队需要讨论一些关键的问题: 最佳部署实践是什么? 为了确保应用程序满足它所必须的服务层次我们需要 ...
- JavaScript学习笔记 -- 带参数arguments的函数的用法
JavaScript函数有带参数与不带参数两种形式,不带参数情况如下: function myFunction() { alert('HelloWorld!') } 在这种类型的函数中,输出值是确定的 ...
- 绝对震撼 7款HTML5动画应用及源码
1.HTML5 Canvas模拟衣服撕扯动画 超级逼真 今天又要来推荐一款HTML5 Canvas动画,是一个模拟衣服撕扯动画,效果非常逼真.刚开始衣服挂在绳子上,用鼠标拖拽衣服即可让衣服摆动起来,当 ...
- JVM内存分配
内存分配:当JVM运行起来的时候就会给内存划分空间,那么这块空间称之为运行时数据区.(备注:当一个Java源程序编译成class字节码文件之后,字节码文件里存放的都是二进制的汇编命令,当程序运行的时候 ...
- int * const 与 const int * 的区别
type * const 与 const type * 是在C/C++编程中特别容易混淆的两个知识点,现在就以 int * const 和 const int * 为例来简略介绍一下这两者之间的区别. ...
- 分支优化:neg+sbb算术运算代替逻辑跳转
今天在分析一个样本的时候,发现一段代码. // .text:100012DF sub esi, 0B7h // 183 // .text:100012E5 neg esi // .text:10001 ...
- C#参数化SQL查询
//写一个存储过程 ALTER PROCEDURE dbo.Infosearch ( @bmid smallint = null, @xm varchar()=null, @xb varchar()= ...
- js拖拽3D立方体旋转
这段时间有点闲,所以就自己找些小玩意来练习练习.今天做了一个可以拖拽页面内空白位置3D立方体就会跟着转动的小例子,布局方面用到css3 3D转换技术,通过transform控制旋转实现的. 上个图 代 ...
- Python LOGGING使用方法
Python LOGGING使用方法 1. 简介 使用场景 场景 适合使用的方法 在终端输出程序或脚本的使用方法 print 报告一个事件的发生(例如状态的修改) logging.info()或log ...
- .Net码农学Android---系统架构和基本概念
至此,你应该已经完成以下前期准备事情: 1.安装完JDK 2.安装完SDK(并在Manager中进行相关版本的更新) 3.相关IDE(如eclipse) 4.安装完ADT 5.安装完AVD(如果你是真 ...