PHP的exit函数和return终止处理有什么区别?

 2025-01-15  阅读 377  评论 5  点赞 360

摘要:当发生错误并且必须终止处理时,我应该使用哪个,exit或return?两者似乎都没有任何变化地完成了这个过程。本来也不是特别在意区别,不过最近有机会用到,于是查了一下区别。简单地说exit:在被调用的地方退出return:将返回值返回给调用函数,并在调用函数内终止似乎还有更严

当发生错误并且必须终止处理时,我应该使用哪个,exit或return?

两者似乎都没有任何变化地完成了这个过程。

本来也不是特别在意区别,不过最近有机会用到,于是查了一下区别。

PHP的exit函数和return终止处理有什么区别?

简单地说

  • exit:在被调用的地方退出

  • return:将返回值返回给调用函数,并在调用函数内终止

似乎还有更严格的区别,这次就这样记住吧。

当我实际运行代码时,我得到以下结果:

因为结束时间不同,执行结果也有差异。

function endTest(){
	print "在end函数中。\n";
	exit;
}

//-----------main-------------
endTest();
print "在main函数中。\n";

执行结果

在end函数中

由于 exit 立即结束,因此不会执行 main 中的 endTest() 。

function endTest(){
	print "在end函数中。\n";
	return;
}

//-----------main-------------
endTest();
print "在main函数中。\n";

执行结果

在end函数中。
在main函数中。

可以看到return 在 endTest() 之后执行。

那么,应该如何区分使用呢?

关键在于结束处理前是否需要结束准备。

最简单的是

main函数中包含exit,对其他函数进行return,返回main函数后结束处理。

return并不是马上就能结束的,所以要在返回时做好充分的准备。

如果结束的话即使发生了错误也可以放心。

评论列表:

  •   weihang
     发布于 3天前回复该评论
  • 写的很不错,学到了!
  •   haliluya
     发布于 3天前回复该评论
  • 写的很不错,学到了!
显示更多评论

发表评论:

管理员

承接各种程序开发,外贸网站代运营,外贸网站建设等项目
  • 内容2460
  • 积分67666
  • 金币86666

Copyright © 2024 LS'Blog-保定PHP程序员老宋个人博客 Inc. 保留所有权利。 Powered by LS'blog 3.0.3

页面耗时0.0271秒, 内存占用1.93 MB, 访问数据库29次

冀ICP备19034377号