PHP中的die()和exit()有什么区别?原产地差异功能等效在其他语言中有所不同
和函数在PHP中有什么区别?die()
exit()
我认为两者具有相同的功能,但我怀疑两者是否有不同之处......这是什么?
和函数在PHP中有什么区别?die()
exit()
我认为两者具有相同的功能,但我怀疑两者是否有不同之处......这是什么?
PHP 中 die()
和 exit()
之间的区别在于它们的起源。
exit()
来自 C 中的 exit()。
die()
来自 Perl 中的 die
。模具 PHP 手册:
此语言构造等效于
exit()。
退出
PHP 手册:
注意:这个语言结构相当于
die()。
。
函数别名列表的 PHP 手册:
die()
和 exit()
在其他语言中是不同的,但在 PHP 中它们是相同的。
来自又一个PHP咆哮:
...作为一名 C 和 Perl 程序员,我准备回答:“为什么 exit() 只是用数字退出状态来拯救程序,而 die() 将错误消息打印出来给 stderr,并以EXIT_FAILURE状态退出。但后来我想起了我们正处在PHP混乱的语法领域。
在 PHP 中,exit() 和 die() 是相同的。
设计师显然认为“嗯,让我们借用C的exit()。如果我们像Perl一样取de()来,Perl的人可能会喜欢它。哎呀!我们现在有两个退出功能!让我们这样做,这样他们都可以把一个字符串或整数作为参数,并使它们相同!
最终的结果是,这并没有真正使事情变得“更容易”,只是更加混乱。C 和 Perl 程序员将继续使用 exit() 仅抛出整数退出值,并使用 die() 抛出错误消息并失败退出。新手和PHP作为第一语言的人可能会想知道“嗯,两个退出函数,我应该使用哪一个?该手册没有解释为什么有 exit() 和 die()。
一般来说,PHP有很多像这样的奇怪的冗余 - 它试图对来自不同语言背景的人友好,但这样做,它会产生令人困惑的冗余。