就像
下面的代码

echo '配置错误';
exit(3);  //状态3表示由于配置错误而退出
登录后复制
登录后复制

// 直接退出
exit('配置错误');
登录后复制
登录后复制

有什么区别?

虚心向各位大神请教一二

回复内容:

就像
下面的代码

echo '配置错误';
exit(3);  //状态3表示由于配置错误而退出
登录后复制
登录后复制

// 直接退出
exit('配置错误');
登录后复制
登录后复制

有什么区别?

虚心向各位大神请教一二

先给出结论: 有细微区别。

讲道理还是拿文档说事:

简单点说就是: 如果是字符串,就会打印出来,如果是数字,就会作为退出的状态码,不会被打印。

登录后复制

分别执行上面两行代码,很显然可以看出结果是一样的。

区别在于:
注释第二行,在终端执行下面命令:
php test.php // 打印"出错"
echo $? //打印 3

注释第一行,在终端执行下面命令:
php test.php // 打印"出错"
echo $? //打印 0

也就是说,eixt()当参数为int类型的时候,会作为退出状态码。
$?解释:Stores the exit value of the last command that was executed(最后一条命令的退出状态,0表示没有错误).

09-06 11:05