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

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

WBOY
WBOY原創
2016-06-06 20:43:351285瀏覽

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

回复内容:

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

一般情况下应该用 echo

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

<code><?php $arg = 1;

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

echo " It's wonderful";
?>
</code>

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

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

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

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

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

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn