首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >解释: register_shutdown_function

解释: register_shutdown_function
EN

Stack Overflow用户
提问于 2012-11-22 02:07:06
回答 2查看 24.2K关注 0票数 22

register_shutdown_function是做什么的?

我对它的用法和用途一无所知。我知道您可以使用它,并且可以很好地适应自定义错误处理程序,但我不知道如何传递它,如何处理它,等等。

有人能为这个编程新手用最简单的术语解释一下吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-11-22 02:12:51

这实际上是一个非常简单的函数。所以你有一个php脚本:

代码语言:javascript
复制
<?php
  echo "Here is my little script";

  function endScript(){
       echo "My little Script has finished";
  }

  register_shutdown_function('endScript');

?>

基本上,你的脚本会运行,当它结束时,因为我们添加了这一行register_shutdown_function('endScript');,它将调用函数endScript,最后输出My little script has finished

这是来自documentation的一点额外信息

注册在脚本执行完成后执行的回调,或者可以对register_shutdown_function()进行exit()的called.Multiple调用,并且每个回调的调用顺序与注册时的顺序相同。如果在一个已注册的关闭函数中调用exit(),则处理将完全停止,并且不会调用任何其他已注册的关闭函数。

*更新

当你在php中频繁使用名为exit()的函数时,它就有很大的用处。

例如:

代码语言:javascript
复制
<?php 

  function endScript(){
       echo "My little Script has finished";
  }
  register_shutdown_function('endScript');

  $result = some_intricate_function()

  if($result == 0){
     exit();
  } 

  $result = some_other_intricate_function()

  if($result == 0){
     exit();
  }

/* and this keeps reoccurring */
?>

现在请注意,即使多次调用exit,也不必每次都在exit之前调用endScript函数。你在一开始就注册了它,现在你知道如果你退出或者你的脚本结束了,你的函数就会被调用。

现在,当然,我的关机功能是非常无用的;但如果你需要清理东西,它可以变得有用(即。关闭打开的文件句柄,保存一些持久数据等)

票数 41
EN

Stack Overflow用户

发布于 2012-11-22 02:10:18

register_shutdown_function注册一个关闭钩子,这是一个在脚本关闭时要执行的函数。它接受一个回调函数作为参数,这是要执行的函数。

我建议您查看函数的documentation

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13499399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档