![PHP+MySQL Web应用开发教程](https://wfqqreader-1252317822.image.myqcloud.com/cover/889/33892889/b_33892889.jpg)
3.4 跳转语句
跳转语句有3个:break语句、continue语句和return语句。其中前两个跳转语句使用起来非常简单而且非常容易掌握,主要原因是它们都被应用在指定的环境中,如for循环语句中。return语句在应用环境上较前两者相对单一,一般被用在自定义函数和面向对象的类中。
3.4.1 break跳转语句
break关键字可以终止当前的循环,包括while、do…while、for、foreach和switch在内的所有控制语句。
break语句不仅可以跳出当前的循环,还可以指定跳出几重循环。格式为:
![](https://epubservercos.yuewen.com/A81163/18123624508030506/epubprivate/OEBPS/Images/78_02.jpg?sign=1738952876-MXTNfDcpkVXQi2L3ULNrhz4V5zIaRIVE-0-cd1126a5f33123f2a8e893e7a1ec3407)
参数 n指定要跳出的循环数量。break关键字的流程图如图3-14所示。
![](https://epubservercos.yuewen.com/A81163/18123624508030506/epubprivate/OEBPS/Images/78_03.jpg?sign=1738952876-TlBrex2e6O975MQZLNARUqDWhvMaYEuW-0-833b1614dee7fdd65039e5c3d44512c8)
图3-14 break关键字的流程图
【例3-8】计算半径1到10的圆面积,直到面积大于100时为止。
![](https://epubservercos.yuewen.com/A81163/18123624508030506/epubprivate/OEBPS/Images/78_04.jpg?sign=1738952876-9gp0d1Ou1SoqngOc3lawDOUDCPrZcPru-0-d84b5cd59bfa829d65d082723f738119)
![](https://epubservercos.yuewen.com/A81163/18123624508030506/epubprivate/OEBPS/Images/79_01.jpg?sign=1738952876-Ebe6hShzBL3yDCeAGkD7rwYzdumBWS6Q-0-94eeec38e4abceea5a6f58a7d6ff3109)
运行结果如下:
![](https://epubservercos.yuewen.com/A81163/18123624508030506/epubprivate/OEBPS/Images/79_02.jpg?sign=1738952876-mWuyvYB93TvDtnefvkkEP8Db0IPVRhH5-0-2cdd4a9fcab15881eb437a5475bddedf)
3.4.2 continue跳转语句
程序执行break后,将跳出循环,而开始继续执行循环体的后续语句。continue跳转语句的作用没有break那么强大,只能终止本次循环,而进入到下一次循环中。在执行continue语句后,程序将结束本次循环的执行,并开始下一轮循环的执行操作。continue也可以指定跳出几重循环。continue跳转语句的流程图如图3-15所示。
![](https://epubservercos.yuewen.com/A81163/18123624508030506/epubprivate/OEBPS/Images/79_03.jpg?sign=1738952876-NoIc5VpixPHdnZaQrZjzspFHqiYl2LPJ-0-eb4ed279604834b3221f97aeb9018d6f)
图3-15 continue跳转语句的流程图
【例3-9】使用for循环来计算1到100所有奇数的和。在for循环中,当循环到偶数时,使用continue实现跳转,然后继续执行奇数的运算。
![](https://epubservercos.yuewen.com/A81163/18123624508030506/epubprivate/OEBPS/Images/79_04.jpg?sign=1738952876-gaAvwNWI83otenb7C0gkGL35wr7tVRVz-0-ad89792ae996a85353a574fe5c155dd0)
![](https://epubservercos.yuewen.com/A81163/18123624508030506/epubprivate/OEBPS/Images/80_01.jpg?sign=1738952876-xNpTBsm1urBNxif9f3Gf2pUbMasBNyoe-0-c354b4c4d64d0fed37c6efadda470f6b)
运行结果为:2500。
说明:
break和continue语句都是实现跳转的功能,但还是有区别的:continue语句只是结束本次循环,并不是终止整个循环的执行,而break语句则是结束整个循环过程。
3.4.3 exit语句
程序执行过程中,总会发生一些错误,比如被零除,打开一个不存在的文件或者数据库连接失败等情况。当程序发生错误之后,应用控制程序应立即终止执行剩余代码,PHP提供的exit语言结构(或者die语言结构)可以实现这个功能。exit语言结构终止整个PHP程序的执行,即后续代码不会执行。
exit语言结构的语法格式为:void exit([string message])。
exit语言结构的功能:输出字符串信息message,然后终止PHP程序的运行。
【例3-10】 exit语言结构的应用。
![](https://epubservercos.yuewen.com/A81163/18123624508030506/epubprivate/OEBPS/Images/80_02.jpg?sign=1738952876-OH39XdU4U4pS55VktuZITnqi9DvlOxg6-0-05e5ce5963f06eb8f0e8f86b069dc5ca)
运行结果为:发生被零除错误!
注:字符串信息message必须写在小括号内。
之所以exit不是函数,而是一个语言结构,是因为上述例子可以修改为:
![](https://epubservercos.yuewen.com/A81163/18123624508030506/epubprivate/OEBPS/Images/80_03.jpg?sign=1738952876-o41tIKag8eDBi6bGDkD6mZOvurTqj1Bi-0-ac8e456cb2247735384fcc232ee4fbb7)
PHP还提供了die语言结构终止程序的运行,die可以看作是exit的别名。例如上述例子可以修改为:
![](https://epubservercos.yuewen.com/A81163/18123624508030506/epubprivate/OEBPS/Images/80_04.jpg?sign=1738952876-CWEbkgX6L7r83uRPHKYUmejFwWaPT7r7-0-a030ea621ff239f02a5792bb8eac11ab)