PHP终止脚本运行三种实现方法详解
PHP中,终止脚本运行有三种方式:主脚本程序中使用return、脚本中使用exit()、die(),三者所在的脚本文件他们之后的代码都不会执行。
1.die()和exit()
在PHP中,die()和exit()的用法和作用是一样的。
这两个函数可以有参数,如果参数是一个字符串,则该函数会在中止脚本运行前输出字符串。
如果参数是一个整数,这个值被用做退出状态。值的范围在0到254之间。
退出状态255由PHP保留,不会被使用;状态0用于成功地终止程序。
注:PHP版本号大于4.2.0,括号里的值是整数,不会输出该参数。
因为die()和exit()的用法和作用一样,我就拿die()来举例子。
代码示例1:
在主脚本中:
header(content-type:text/html;charset=utf-8);
$a=1;
$b=9;
echo$a;//输出1
die;//中止脚本运行,下面不在运行
$sum=$a+$b;
echo$sum;//不被输出
?>
运行结果:
1
代码示例2:
在函数中:
header("content-type:text/html;charset=utf-8");
functionA(){
echo"2";//输出2
die("error");//中止脚本运行,并输出括号里的字符串
}
echo"1";//先输出1
A();//调用函数
echo"钱难有";//不被输出
?>
运行结果:
1
2
error
解释一下例2:"钱难有"没有被输出呢?
首先PHP的执行机制是从上到下。
第一步先声明函数
第二步执行echo语句输出1
第三步调用函数A,输出2,执行die中止脚本运行并输出error
小结:die()和exit()不管是在主脚本或函数里都是中止脚本运行的,后面的代码都不在执行。
2.return
首先return是语言结构,它不是函数。它可以有返回值。
如果在主脚本中调用,则当前脚本文件中止运行。如果当前脚本文件是被include的或者require的,则控制交回调用文件。此外,如果当前脚本是被include的,则return的值会被当作include调用的返回值,相应的在主脚本文件中定义一个变量进行返回值的接收。
如果一个函数中包含return语句,当调用此函数时,函数的执行只会进行到return这一步,return之后的语句都不会执行,并将return的参数作为函数的值返回。
代码示例1:
主脚本中:
header("content-type:text/html;charset=utf-8");
$name="钱难有";
echo"红军不怕远征难";//输出
return;//中止脚本运行
echo$name;//不被输出
?>
运行结果:
红军不怕远征难
代码示例2:
函数体中:
header("content-type:text/html;charset=utf-8");
functionA(){
$a=5;$b=4;//定义两个局部变量
return$a+$b;//返回$a+$b的值,并结束当前脚本
echo$a;//$a不在被输出
}
$sum=A();//调用函数并用变量接收return的返回值
echo$sum;//输出$sum
echo"钱难有";//输出"钱难有"
?>
运行结果:
9
钱难有
小结:在主脚本中调用return,则脚本中止运行。在函数体调用return,如果有返回值则返回,函数里的代码不在执行。而主脚本的代码依然会运行。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。