PHP中exit,exit(0),exit(1),exit(‘0’),exit(‘1’),die,return的区别

PHP中exit,exit(0),exit(1),exit(‘0’),exit(‘1’),die,return的区别

die(‘1’)  die()和exit()都是中止脚本执行函数;其实exit和die这两个名字指向的是同一个函数,die()是exit()函数的别名。该函数只接受一个参数,可以是一个程序返回的数值或是一个字符串,也可以不输入参数,结果没有返回值。

参考:虽然两者相同,但通常使用中也有细微的选择性。

当传递给exit和die函数的值为0时,意味着提前终止脚本的执行,通常用exit()这个名字。

echo "1111"; exit(0); echo "2222";

当程序出错时,可以给它传递一个字符串,它会原样输出在系统终端上,通常使用die()这个名字。

$fp=fopen("./readme.txt","r") or die("不能打开该文件"); //这种情况下,如果fopen函数被调用返回布尔值false时,die()将立即终止脚本,并马上打印 //传递给它的字符串,“死前还能说一两句话”。

同样的die(‘1’)也通exit(‘1’)一样,输出1

echo "begin"; die('1'); echo "end"; //输出begin1

 

exit(1) 不输出内容,结束程序

echo "begin"; exit(1); echo "end"; //输出begin

 

exit(0) 不输出内容,结束程序

echo "begin"; exit(0); echo "end"; //输出begin

 

exit(‘0’) 输出0 并结束程序

echo "begin"; exit('0'); echo "end"; //输出begin0

 

exit(‘1’) 输出1 并结束程序

echo "begin"; exit('1'); echo "end"; //输出begin1

 

return 返回值,后续的程序也不执行,值并不输出

echo "begin"; return 1; echo "end"; //输出begin,return的值没有输出到屏幕,而是返回给了上一层

 

总结:

1
2
3
4
5
6
return
是返回值
die是遇到错误才停止
exit
是直接停止,并且不运行后续代码,
exit
()可以显示内容。
return
就是纯粹的返回值了,但是也不会运行后续代码
exit
(0):正常运行程序并退出程序;
exit
(1):非正常运行导致退出程序;

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/113212.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pycharm如何使用mysql_pycharm中的MySQL驱动

    pycharm如何使用mysql_pycharm中的MySQL驱动一般的开发过程中,我们需要使用pycharm来连接数据库,从而来进行对数据库的操作,这里主要连接的是mysql数据库,另外加了使用pandas模块读取数据库的操作,基本的操作如下所示:直接连接数据库importpymysqlconn=pymysql.connect(host=’localhost’,port=3306,db=’joker’,user=’root’,password=’root…

    2022年8月28日
    1
  • Hostapd Android[通俗易懂]

    Hostapd Android[通俗易懂]HostapdAndroidhttps://github.com/lnmcc/hostapd-android http://www.omitol.com/archives/109.html http://forum.xda-developers.com/showthread.php?t=1988735 http://droidmodderx.com/galaxyn…

    2022年5月21日
    28
  • vim复制粘贴_vim的复制粘贴

    vim复制粘贴_vim的复制粘贴vim与系统剪切板(将vim的内容复制到系统剪切板、或将系统剪切板内容复制到vim中)vim插件检查要完成vim中的内容复制到系统剪切板,需要vim支持+clipboard,检查的方法(ubuntu16.04为例):打开terminal(ctl+alt+t)输入vim–version|grepclipboard你会得到这样的结果查看clipboard和xterm_c…

    2022年9月22日
    0
  • XGBoost原理介绍

    XGBoost原理介绍 1.Introduction在这篇文章中,我将介绍XGBoost(eXtremeGradientBoosting),一种treeboosting的可扩展机器学习系统。这个系统可以作为开源的软件包使用。该系统的影响已经在大量的机器学习和数据挖掘挑战中被广泛地认可。这些获胜解决方案包括:商店销售预测;高能物理事件分类;网络文本分类;顾客行为预测;运动检测;广告点击率预测;…

    2022年6月7日
    41
  • PreparedStatement的用法「建议收藏」

    PreparedStatement的用法「建议收藏」一、用法:PreparedStatement是Statement的子接口,Statement在使用的过程中,直接拼写SQL是很容易出错的且难用的,PreparedStatement带有模版的思想,减少了出错的机率。1、写sql模版,并和PreparedStatement绑定StringsqlsqlTemplate="insertempVALUE(?,?,?)";Prepar…

    2022年6月8日
    34
  • Java作业2.0

    Java作业2.0设计一个用户类User,类中的变量有用户名、密码和记录用户数量的变量,定义3个构造方法:无参的、为用户名赋值的、为用户名和密码赋值的,还有获取和设置密码的方法和返回类信息的方法。packageJa

    2022年7月2日
    27

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号