为了账号安全,请及时绑定邮箱和手机立即绑定

PHP中的die()和exit()有什么区别?

PHP中的die()和exit()有什么区别?

PHP
茅侃侃 2019-09-19 08:52:14
PHP中有哪些区别die()和exit()功能有什么区别?我认为两者都具有相同的功能,但我怀疑两者有什么不同......它是什么?
查看完整描述

3 回答

?
梦里花落0921

TA贡献1772条经验 获得超6个赞

没有区别 - 它们是一样的。

PHP手册exit

注意:这种语言结构相当于die()

PHP手册die

这种语言结构相当于exit()


查看完整回答
反对 回复 2019-09-19
?
元芳怎么了

TA贡献1798条经验 获得超7个赞

原产地的差异

PHP die()exit()PHP 之间的区别在于它们的起源


功能等同

die()并且exit()等效的功能。

PHP手册

PHP手册die

这种语言结构相当于exit()

PHP手册exit

注意:这种语言结构相当于die()

PHP 函数别名列表手册:

die 是主函数的别名 exit()


其他语言不同

die()并且在其他语言exit()有所不同,但在PHP中它们是相同的。

来自又一个PHP咆哮

...作为C和Perl编码器,我准备回答:“为什么,exit()只是用数字退出状态来关闭程序,而die()将错误消息输出到stderr并以EXIT_FAILURE状态退出。 “ 但后来我记得我们处于混乱的PHP语法之中。

在PHP中,exit()和die()是相同的。

设计师显然认为“嗯,让我们从C借用exit()。而Perl人们可能会喜欢它,如果我们也像Perl那样使用die()。哎呀!我们现在有两个退出函数!让我们这样做他们俩可以将字符串或整数作为参数,使它们相同!“

最终的结果是,这并没有让事情变得“更容易”,更令人困惑。C和Perl编码器将继续使用exit()仅抛出整数退出值,而die()抛出错误消息并退出失败。新手和PHP作为第一语言的人可能会想“嗯,两个退出函数,我应该使用哪一个?” 该手册没有解释为什么有exit()和die()。

一般来说,PHP有很多像这样的奇怪冗余 - 它试图对来自不同语言背景的人友好,但在这样做时,它会产生令人困惑的冗余。


查看完整回答
反对 回复 2019-09-19
?
拉丁的传说

TA贡献1789条经验 获得超8个赞

如前所述,这两个命令产生相同的解析器令牌。

这有一个很小的区别,那就是解析器返回令牌需要多长时间。

我还没有研究过PHP解析器,但如果它是以“d”开头的一长串函数列表,以及一个以“e”开头的较短列表,那么查找函数的函数名必须有时间惩罚,以“ E”。由于如何检查整个函数名称,可能存在其他差异。

我怀疑它是可测量的,除非你有一个专门解析PHP的“完美”环境,以及许多不同参数的请求。但毕竟PHP必须有区别,因为它是一种解释型语言。


查看完整回答
反对 回复 2019-09-19
  • 3 回答
  • 0 关注
  • 683 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信