首页 > 做ajax请求后端PHP的时候最后输出数据为什么我看别人代码都是exit()而非echo

做ajax请求后端PHP的时候最后输出数据为什么我看别人代码都是exit()而非echo

我自己平常写的都是echo $data
但是我看别人的代码,很多都是exit($data)


反正我喜欢exit
1.减少业务逻辑判断的压力
2.完成后立即退出php脚本执行


一般情况下应该用 echo

exit() 的作用是强制终止脚本,用它输出结果附带的好处就是可以避免后续代码被执行
例如这种情况:

<?php
$arg = 1;

if($arg == 0) {
  exit('failed');
} elseif($arg == 1) {
  echo 'oooooh!';
} elseif($arg == 2) {
  echo 'yeeeeeh!'
}

echo " It's wonderful";
?>

当 $arg 为 0 时,只输出 'failed' 不输出 "It's wonderful"

不过使用 exit() 有一个要注意的地方:
如果传给它的是一个数字,那么这个数字会被当作退出状态码,不会输出给客户端
具体可以看官方描述:http://cn2.php.net/exit


exit() die()个人经验主要就是反正输出后还有其他输出,影响客户端正常接收解析。具体实验可以试试,在输出完之后再有输出,客户端接收到的数据就错误了,小的在过往接收别人的项目时曾经遇到过,其他朋友说得也是同样道理。


因为一般这种接口API在输出结果之后就算是完结了,为了防止一些逻辑上的问题导致后面的代码继续进行,干脆就用exit()在此处输出结果后停止脚本。以上是身为die党的一些个人感悟。

【热门文章】
【热门文章】