>백엔드 개발 >PHP 튜토리얼 >做ajax请求后端PHP的时候最后输出数据为什么我看别人代码都是exit()而非echo

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

WBOY
WBOY원래의
2016-06-06 20:43:351278검색

我自己平常写的都是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으로 문의하세요.