【web 开发基础】PHP中的特殊流程控制(break) -PHP 快速入门 (20)

简介: 我们在介绍while和for循环的时候,都是通过循环语句本身提供的条件表达式来指定循环的次数,或者是遇到特殊情况要停止循环。如果想在循环体执行过程中终止循环,或是跳过一些循环继续执行其他循环,就需要使用到特殊的流程控制语句。如:break语句,continue语句,exit语句。接着下面就来详细了解PHP中break语句的用法和相关概念。

前言

我们在介绍while和for循环的时候,都是通过循环语句本身提供的条件表达式来指定循环的次数,或者是遇到特殊情况要停止循环。如果想在循环体执行过程中终止循环,或是跳过一些循环继续执行其他循环,就需要使用到特殊的流程控制语句。如:break语句,continue语句,exit语句。接着下面就来详细了解PHP中break语句的用法和相关概念。

break语句

在PHP中,break语句是用来中断当前循环或者中断分支结构的,或和 label 一起使用,可中断相关联的语句。break可以结束当前for,foreach,while,do...while或者switch分支结构的执行。其语法格式如下:

break [label];
可选的 label 参数指定断点处语句的标签。

下图为break在不同循环结构中的使用格式:

编程实践

下面以for为例来说明break语句的基本使用方法及其功能。以输出九九乘法表为例,尝试在双层嵌套for循环中使用break语句,当外层for循环执行第5次时使用break退出循环,层for循环也使用break退出循环。其代码如下:

<?phpfor($i=9;$i>=1;$i--){
if($i<5){
break;
  }
for($j=$i;$j>=1;$j--){
if($i<5){
break;
    }
echo"$jx $i= " . ($j*$i) . "&nbsp;&nbsp;";
  }
echo"<br>";
}

执行结果如下图所示:

在循环中使用break流程大致如下:

使用break语句可以将深埋在嵌套循环中的语句退出到指定层数或直接退出到最外层。break通过接受一个可选的数字参数来决定跳出几重循环语句或是几重switch语句,下面我们就来看看PHP中break语句在while和switch中的使用:

<?php$i=0;
while(++$i){
switch($i){
case6:
echo"变量为6时,只退出switch语句<br>";
break1; 
case12:
echo"变量\$i为12时,不仅退出switch同时退出while循环<br>";
break2;
  }
}

执行结果如下:

上面的代码是外层一个while语句循环内嵌一层switch语句,第7行代码中 "break 1",是使用break退出1层,即是只退出switch语句,第10行代码中"break 2",使用break退出两层。即是退出switch的同时退出while。

在PHP中foreach主要是用于数组的遍历,foreach也是我们实际开发中最常用到的一种循环结构。foreach也叫增强for循环,可以说是foreach的一个特殊简化版;foreach有两种语法:

第一种:遍历给定的 数组语句 array_expression 数组。每次循环中,当前单元的值被赋给 $value 并且数组内部的指针向前移一步(因此下一次循环中将会得到下一个单元):

foreach (array_expression as $value)

第二种:同上,同时当前单元的键名也会在每次循环中被赋给变量 $key

foreach (array_expression as $key => $value)

接着我们继续看看break在foreach中的使用:当遍历到数组中的值等于5时,退出循环。

<?php$arr=array(1,2,3,4,5,6,7,8,9);
foreach($arras$v){
if($v==5)
  {
break;
  }
echo$v."<br>";
}

执行结果:

总结

在实际的使用中,我们不会平白无故直接退出循环,一般结合if判断是否达到某个条件才会退出当前循环。break在PHP的使用跟在其他编程语言中的用法基本是一样的,PHP中 break 语句有以下两种用法:

  1. break 语句出现在一个循环内时,循环会立即终止,且程序流将继续执行紧接着循环的下一条语句
  2. 它可用于终止 switch 语句中的一个 case

如果你使用的是嵌套循环(即一个循环内嵌套另一个循环),break 语句会停止执行最内层的循环,然后开始执行该块之后的下一行代码。

目录
相关文章
|
3天前
|
设计模式 JavaScript 前端开发
PHP在现代Web开发中的角色与挑战
【8月更文挑战第16天】随着互联网技术的飞速发展,PHP作为一门历史悠久的服务器端脚本语言,其在现代Web开发中的地位和作用正经历着重要的转变。本文将探讨PHP在面对新兴技术挑战时如何保持其相关性,以及开发者社区如何通过创新来应对这些挑战,从而确保PHP继续在动态变化的Web开发领域中发挥关键作用。
|
3天前
|
前端开发 JavaScript PHP
PHP在现代Web开发中的角色与挑战
【8月更文挑战第16天】随着互联网技术的飞速发展,PHP作为一门历史悠久的服务器端脚本语言,在现代Web开发中扮演着不可或缺的角色。本文将探讨PHP在面对新兴技术挑战时的地位、优势以及面临的主要问题,同时展望未来PHP可能的发展方向。文章旨在为读者提供一个关于PHP当前状况及未来展望的全面视角。
|
2天前
|
安全 JavaScript 前端开发
PHP 在现代Web开发中的角色与挑战
【8月更文挑战第17天】本文将探讨PHP语言在当前Web开发领域的地位,分析其面临的技术挑战及发展趋势。我们将通过比较PHP与其他编程语言的优缺点来了解它的独特之处,并展望PHP在未来Web开发中的可能方向。
18 10
|
23小时前
|
前端开发 JavaScript 安全
PHP在现代Web开发中的角色与挑战
【8月更文挑战第18天】随着互联网技术的飞速发展,PHP作为一门历史悠久的服务器端脚本语言,一直在Web开发领域占据着举足轻重的地位。然而,面对新兴的语言和技术,PHP也遭遇了前所未有的挑战。本文将探讨PHP在现代Web开发中的角色定位、面临的挑战以及未来发展的可能性,旨在为PHP开发者提供行业洞察,并鼓励对PHP的持续关注和创新。
|
6天前
|
监控 安全 前端开发
使用PHP进行Web开发的最佳实践
【8月更文挑战第13天】使用PHP进行Web开发时,遵循最佳实践可以显著提高项目的质量和可维护性。从使用现代PHP版本、遵循PSR标准到编写安全的代码、采用MVC架构模式等各个方面入手,不断提升你的开发能力和项目质量。
|
5天前
|
JavaScript 前端开发 安全
PHP在现代Web开发中的角色与挑战
【8月更文挑战第14天】 本文将深入探讨PHP作为一门历史悠久的编程语言,在现代Web开发中所扮演的角色以及面临的挑战。随着技术的发展和新兴编程语言的涌现,PHP的地位似乎受到了挑战。然而,通过对其生态系统、性能优化、安全性及未来发展方向的分析,我们可以更加全面地理解PHP的现状和潜力。文章将从PHP的历史贡献出发,分析其在现代Web开发中的应用情况,进而讨论PHP社区如何应对新的技术挑战,并展望PHP的未来。
|
23小时前
|
编译器 PHP 开发者
PHP在现代Web开发中的角色与影响
【8月更文挑战第18天】本文深入探讨了PHP作为一门服务器端脚本语言,在现代Web开发中所扮演的角色以及它所带来的深远影响。文章首先回顾了PHP的发展历程,随后详细分析了PHP在Web开发中的应用优势和面临的挑战,并讨论了PHP与其他编程语言的关系及其在现代Web开发趋势中的位置。最后,文章展望了PHP的未来发展趋势,为读者提供了对PHP在Web开发中的全面了解。
|
3天前
|
缓存 安全 编译器
探索PHP 8的新特性:提升现代Web开发的效率与性能
PHP 8的推出标志着这个流行的服务器端脚本语言迈入了一个新的时代。本文将深入探讨PHP 8中引入的一些关键新特性,包括JIT编译器、联合类型、命名参数、弱引用等,并解释这些特性如何为开发者提供更高效的编程工具和改进的性能。我们将通过实际代码示例来展示这些新特性的应用,帮助读者理解如何利用PHP 8来构建更快、更可靠、更易于维护的Web应用。
6 0
|
4天前
|
安全 前端开发 PHP
PHP 在现代Web开发中的角色与挑战
【8月更文挑战第15天】随着Web技术的不断进步,PHP作为一门历史悠久的服务器端脚本语言,面临着新的机遇与挑战。从动态网站的快速开发到现代Web应用的性能优化,PHP一直在进化。本文将探讨PHP在现代Web开发中的角色,分析其面临的主要挑战,并展望未来的发展方向。不涉及代码示例,专注于理论分析和趋势预测,为读者提供对PHP未来可能的发展路径的深入理解。
10 0
|
5天前
|
缓存 安全 JavaScript
探索PHP的现代演变:从Web开发到框架创新
【8月更文挑战第14天】随着互联网技术的不断进步,PHP语言也在不断地发展和演变。本文将深入探讨PHP在现代Web开发中的地位,分析其语法和功能的演进,并着重讨论PHP框架如何推动Web开发的现代化。同时,文章也将预测PHP在未来技术生态中的可能发展方向。