使用参数'status'退出

时间:2012-07-19 15:35:19

标签: php

根据documentation退出:

  

如果status是一个整数,该值将用作退出状态而不打印。

这让我非常困惑。 exit();exit(1);之间有什么区别?有什么用例?我该如何选择?在什么场合? php如何管理这种状态?

4 个答案:

答案 0 :(得分:3)

有一个数字返回码可以被OS / shell /调用PHP脚本的进程读取。请参阅:http://en.wikipedia.org/wiki/Exit_status

答案 1 :(得分:1)

我认为只有在从命令行执行脚本或其他程序执行脚本时才会有用,通过Web服务器它是没有意义的。

答案 2 :(得分:1)

exit();exit(1);之间的区别在于,前者将执行PHP脚本的进程的exit status设置为0,后者将其设置为{{ 1}}。

退出状态1通常意味着该流程成功完成。没有发生错误。

01的退出状态通常用于表示由于发生某种错误而导致进程中止。特定退出状态意味着什么错误取决于您的PHP脚本。

父进程可以使用子进程返回的退出状态来决定如何继续,例如是否应该退出,或者重试,或者执行另一个子进程,或者其他什么。

答案 3 :(得分:0)

它类似于C ++中的返回代码,通常程序在一切成功完成时返回0,在发生某些错误时返回负数,而正数取决于可以使用该代码的位置。

但总的来说,正如之前的答案中已经说过的那样,如果不会从其他脚本或程序中调用脚本,那么返回的内容就没有多大意义了