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

PHP中有哪些区别die()exit()功能有什么区别?

我认为两者都具有相同的功能,但我怀疑两者有什么不同......它是什么?



茅侃侃
浏览 684回答 3
3回答

梦里花落0921

没有区别 - 它们是一样的。PHP手册exit:注意:这种语言结构相当于die()。PHP手册die:这种语言结构相当于exit()。

元芳怎么了

原产地的差异PHP die()和exit()PHP 之间的区别在于它们的起源。exit()是从exit()在Ç。die()是die在Perl的。功能等同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有很多像这样的奇怪冗余 - 它试图对来自不同语言背景的人友好,但在这样做时,它会产生令人困惑的冗余。

拉丁的传说

如前所述,这两个命令产生相同的解析器令牌。但这有一个很小的区别,那就是解析器返回令牌需要多长时间。我还没有研究过PHP解析器,但如果它是以“d”开头的一长串函数列表,以及一个以“e”开头的较短列表,那么查找函数的函数名必须有时间惩罚,以“ E”。由于如何检查整个函数名称,可能存在其他差异。我怀疑它是可测量的,除非你有一个专门解析PHP的“完美”环境,以及许多不同参数的请求。但毕竟PHP必须有区别,因为它是一种解释型语言。
打开App,查看更多内容
随时随地看视频慕课网APP