文档章节

PHP register_shutdown_function

SibylY
 SibylY
发布于 2016/12/15 20:45
字数 365
阅读 9
收藏 0

PHP register_shutdown_function

脚本时常死掉,而且并不总是那么好看. 我们可不想给用户显示一个致命错误,又或者一个空白页(在display_errors设为off的情况下) . PHP中有一个叫做  register_shutdown_function 的函数,可以让我们设置一个当执行关闭时可以被调用的另一个函数.当我们的脚本执行完成或意外死掉导致PHP执行即将关闭时,我们的这个函数将会 被调用

PHP提供register_shutdown_function()这个函数,能够在脚本终止前回调注册的函数,也就是当 PHP 程序执行完成后执行的函数。
register_shutdown_function 执行机制是:PHP把要调用的函数调入内存。当页面所有PHP语句都执行完成时,再调用此 函数。注意,在这个时候从内存中调用,不是从PHP页面中调用,所以上面的例子不能使用相对路径,因为PHP已经当原来的页面不存在了。就没有什么相对路 径可言。
注意:register_shutdown_function 是指在执行完所有PHP语句后再调用函数,不要理解成客户端关闭流浏览器页面时调用函数。
可以这样理解调用条件:
1、当页面被用户强制停止时
2、当程序代码运行超时时
3、当PHP代码执行完成时,代码执行存在异常和错误、警告

© 著作权归作者所有

SibylY
粉丝 31
博文 445
码字总数 362719
作品 0
海淀
程序员
私信 提问
register_shutdown_function 函数详解

registershutdownfunction 函数详解 php开发测试及线上的时候可以根据不同情况设定错误和异常处理需要用到有 设定错误和异常处理三函数 1 2 3 下面讲一下registershutdownfunction() 函数. 功...

李佳顺
06/03
5
0
PHP中register_shutdown_function函数

函数说明 定义:该函数是来注册一个会在PHP中止时执行的函数 参数说明: 注册一个 callback ,它会在脚本执行完成或者 exit() 后被调用。 callback:待注册的中止回调 parameter:可以通过传...

Ocean_K
04/04
9
0
PHP中处理函数的函数(Function Handling Functions)

calluserfuncarray — 让参数以数组的形式调用一个函数 calluserfunc — 调用一个存在的函数 createfunction — 建立一个函数 funcgetarg — 获取函数中某个参数的值 funcgetargs — 获取函数...

酸奶喝不完
2012/09/11
51
0
PHP使用register_shutdown_function注册中断处理函数

php中registershutdownfunction用来注册一个当程序意外终止或者中断后被调用的函数。 <?phpfunction handleShutDown() { if($fp = fopen('/usr/webroot/log.txt',"wa"))   { fwrite($fp, ......

IamOkay
2014/10/27
304
0
如何临时解除register_shutdown_function

register_shutdown_function可以先后注册多个函数,根据注册的顺序先后执行,而不是覆盖,怎么临时解除 register_shutdown_function已经注册的函数呢,换成自己临时的函数,不影响其它地方...

hphper
2015/08/20
170
2

没有更多内容

加载失败,请刷新页面

加载更多

只需一步,在Spring Boot中统一Restful API返回值格式与统一处理异常

统一返回值 在前后端分离大行其道的今天,有一个统一的返回值格式不仅能使我们的接口看起来更漂亮,而且还可以使前端可以统一处理很多东西,避免很多问题的产生。 比较通用的返回值格式如下:...

晓月寒丶
今天
59
0
区块链应用到供应链上的好处和实际案例

区块链可以解决供应链中的很多问题,例如记录以及追踪产品。那么使用区块链应用到各产品供应链上到底有什么好处?猎头悬赏平台解优人才网小编给大家做个简单的分享: 使用区块链的最突出的优...

猎头悬赏平台
今天
28
0
全世界到底有多少软件开发人员?

埃文斯数据公司(Evans Data Corporation) 2019 最新的统计数据(原文)显示,2018 年全球共有 2300 万软件开发人员,预计到 2019 年底这个数字将达到 2640万,到 2023 年达到 2770万。 而来自...

红薯
今天
64
0
Go 语言基础—— 通道(channel)

通过通信来共享内存(Java是通过共享内存来通信的) 定义 func service() string {time.Sleep(time.Millisecond * 50)return "Done"}func AsyncService() chan string {retCh := mak......

刘一草
今天
58
0
Apache Flink 零基础入门(一):基础概念解析

Apache Flink 的定义、架构及原理 Apache Flink 是一个分布式大数据处理引擎,可对有限数据流和无限数据流进行有状态或无状态的计算,能够部署在各种集群环境,对各种规模大小的数据进行快速...

Vincent-Duan
今天
60
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部