register_shutdown_function

注册一个会在php中止时执行的函数,注册一个 callback ,它会在脚本执行完成或者 exit() 后被调用。

error_get_last

获取最后发生的错误,包含type(错误类型),message(错误消息),file(发生错误所在的文件),line(发生错误所在的行)的一个数组,如果没有错误则返回null。

两个函数可以结合使用,获取程序发生的错误,并记录日志信息。

以下是个简单例子:class errors

{

/**

*  回调函数

*/

function shutdown()

{

// 获取错误

$error = error_get_last();

if ($error) {

// 记录日志信息

var_dump($error);

}

}

}

class test{

function test_shutdown()

{

// 注册一个会在php中止时执行的函数 shutdown

register_shutdown_function([new errors(), 'shutdown']);

// 这里调用一个不存在的函数测试

testaa();

}

}

$test = new test();

$test->test_shutdown();

php error_get_last(),PHP捕获异常register_shutdown_function和error_get_last的使用相关推荐

  1. PHP如何进行错误与异常处理(PHP7中的异常处理和之前版本异常处理的区别)

    PHP如何进行错误与异常处理(PHP7中的异常处理和之前版本异常处理的区别) 一.总结 一句话总结: throwable接口+Error类 在PHP7更新中有一条:更多的Error变为可捕获的Exce ...

  2. PHP的异常处理异常捕获错误类

    1.错误分类 Fatal Error:致命错误(脚本终止运行)E_ERROR // 致命的运行错误,错误无法恢复,暂停执行脚本E_CORE_ERROR // PHP启动时初始化过程中的致命错误E_CO ...

  3. xampp去运行php文件_从0开始构建一个属于你自己的PHP框架

    如何构建一个自己的PHP框架 为什么我们要去构建一个自己的PHP框架?可能绝大多数的人都会说"市面上已经那么多的框架了,还造什么轮子?".我的观点"造轮子不是目的,造轮子 ...

  4. 查错秘籍—PHP大法

    查错秘籍-PHP大法 --与葵花宝典齐名 偶突然发现自己老了,酱紫很难和大家沟通滴,所以特别翻译成大家能听懂的语言和大家交流,酱紫大家就都开心了.(总结只是俺自己闲暇之余的粗陋之作,错误之处,欢迎大家 ...

  5. php异常和错误处理

    异常和错误处理 在语言级别上,通常具有许多错误处理模式,但这些模式往往建立在约定俗称的基础上,也就是说这些错误都是预知的.但是在大型程序中,如果每次调用都去逐一检查错误,会使代码变得冗长复杂,到处充斥 ...

  6. php register_shutdown_function响应error 配合error_get_last 捕获错误

    register_shutdown_function 函数,当我们的脚本执行完成或意外死掉导致PHP执行即将关闭时,我们的这个函数将会 被调用,可以配合 error_get_last 使用,代码如下, ...

  7. errorgetlast php,php error_clear_last()函数与error_get_last()函数

    error_clear_last - 清除最近一次错误 error_clear_last() 例子<?php var_dump(error_get_last()); error_clear_la ...

  8. php分享三十三:用php中的register_shutdown_function和fastcgi_finish_request

    已前言 在php中又两个方法都是在请求快结束的时候执行.方法名分别是 register_shutdown_function和fastcgi_finish_request.虽然执行的时机差不多,但是功能 ...

  9. C++ 笔记(20)— 异常处理(抛出异常、捕获异常)

    异常提供了一种转移程序控制权的方式. C++ 异常处理涉及到三个关键字: try . catch . throw . throw : 当问题出现时,程序会抛出一个异常.这是通过使用 throw 关键字 ...

最新文章

  1. ElementUI中Transfer穿梭框的使用、赋值取值进而实现新增和编辑功能
  2. VisualStudio2017中新建项目没有Asp.Net项目
  3. 窗口管理器 实现_「42」Python布局管理器(三):place实现组件的精确与灵活布局...
  4. nand ubi -4 kernel和mtd
  5. HDOJ5547 SudoKu
  6. python提取部分字符串三参数_python3 字符串属性(三)
  7. 【设计】拟物时钟-夜间模式切换
  8. Flex DataGrid的labelFunction用法例子
  9. LCA(最近公共祖先)
  10. mysql 5.6.21 安装_mysql5.6.21安装(通用二进制)
  11. 函数指针 和 函数指针数组 和 函数指针数组
  12. Vue.js 学习笔记 十 自定义按键事件
  13. 前端保存之前输入的值_前端基础进阶(一):内存空间详细图解
  14. Python 使用pip下载失败的解决方案
  15. EXCEL插件《二维码标签工具》
  16. android应用跳文件管理,10款优秀Android文件管理器应用
  17. CTF小工具下载整理
  18. 《碎玉投珠》的读后感想法心得范文3800字
  19. HTML-form表单+iframe
  20. 利用IDM下载QQ群文件

热门文章

  1. appium java 点击事件_java – 无法使用Appium在Android中的权限对话框中单击“允许”按钮...
  2. csky linux 编译内核,TQ2440的EmbedSky_hello模块编译内核问题及解决
  3. pythonsearch结果_python 查询Elasticsearch的小例子
  4. php获得指定目录文件,PHP遍历指定文件夹获取路径及大小(包含子文件夹)
  5. ppt生成器_9款魔性#傻瓜生成器#,上班可以划水一天
  6. 印度不只有开挂火车,还有一开挂的数学家,凭一己之力单刷数学界
  7. 屠呦呦凭什么获诺奖?
  8. 29岁当上北大博导,她成2019年最年轻杰青建议资助人之一
  9. 它打败了欧几里得空间,踹飞了数学怪物,成为全世界的焦点
  10. 原来每天喝它有助于大脑开发?