php for循环语句的几种用法分析
for 循环的语法是:
代码如下 复制代码
for (expr1; expr2; expr3)
statement
下面说说for语句几种有用的变型。
1、无限循环
这种也叫死循环,没有开始和结束一直就这样下去
<?php for (;;) {//放置需要不断执行的语句 } ?>
死循环如果在当中配合if else ,break也可以跳出循环
代码如下 复制代码
<?php for (;;) {//如果是公元2199年,则跳出循环 http://www.hzhuti.com/nokia/n93/ if (date('Y') == '2199') {break;} } ?>
2、使用空表达式
接下来就是说说在初始化语句expr1中使用null语法,留空expr1最常见的作用就是完成更为复杂的初始化工作。
代码如下 复制代码
<?php if (isset($i)) {unset($i);if ((int) date('') < 2008) {$i = 0;} else {$i = 1;} } else {$i =3; }for (;$i < 10;$i++) {echo $i; } ?>
同样道理,迭代表达式expr3也可能留空,也可以利用这点编写更为复杂的迭代式,比如说根据不同的条件调用不同的迭代式。
而for语句中的条件语句expr2留空则是上面所说的无限循环,当然也可以添加一些更为复杂的条件去判断什么时候跳出循环,在此不在重复。
3、多重循环
使用多重循环来控制多个变量也是在for语句中使经常被忽略的一个特性。如下面的例子,在一般的任务中用到的一般会是双重循环,三重以上的循环一般意义不大。
<?php for ($i = 0, $j = 10;$i <= 10;$i++, $j--) {echo "$i + $j = 10rn"; } ?>
以上代码将输出:
0 + 10 = 10
1 + 9 = 10
2 + 8 = 10
3 + 7 = 10
4 + 6 = 10
5 + 5 = 10
6 + 4 = 10
7 + 3 = 10
8 + 2 = 10
9 + 1 = 10
10 + 0 = 10
如果我们要半路跳出循环怎么操作,实例
看下面这个多重循环嵌套的例子:
for($i = 1;$i <= 10; $i++ ){ for($j = 1;$j <= 10;$j++){ $m = $i * $i + $j * $j; echo”$m n<br/>”; if($m < 90 || $m > 190) { break 2; } } }
break 2跳出了两重循环,你可以试验一眼,将2去掉,得到的结果是完全不一样的。如果不使用参数,跳出的只是本次循环,第一层循环会继续执行下去。
注:
break是被用在上面所提的各种循环和switch语句中的。他的作用是跳出当前的语法结构,执行下面的语句。break语句可以带一个参数n,表示跳出循环的层数,如果要跳出多重循环的话,可以用n来表示跳出的层数,如果不带参数默认是跳出本重循环。
4、更为复杂的表达式
如果把for语句的三个表达式写得复杂一些,则可以用于优化算法。甚至可以使用没有循环体的for语句来完成一些任务。比如计算累加或阶乘:
<?php //计算1-5的累加结果,斌值到$j for ($i = 1,$j = 0; $i <= 5;$j += $i++); echo $j;//计算1-5的阶乘结果,斌值到$j for ($i = 1,$j = 1; $i <= 5;$j *= $i++); echo $j;?>
如果我想执行到一个地方,自动调出当前循环执行一下-实例
<?php for($i = 1;$i <= 100; $i++ ){ if($i % 3 == 0 || $i % 7 == 0){ continue; } }else{ echo”$i n<br/>”; } } ?>
PHP的代码片段的作用是输出100以内,既不能被7整除又不能被3整除的那些自然数,循环中先用if条件语句判断那些能被整除的数,然后执行continue;语句,就直接进入了下个循环。不会执行下面的输出语句了。
注:
continue 是用来用在循环结构中,控制程序放弃本次循环continue语句之后的代码并转而进行下一次循环。continue本身并不跳出循环结构,只是放弃这一次循环。如果在非循环结构中(例如if语句中,switch语句中)使用continue,程序将会出错。
更多详细内容请查看:http://www.111cn.net/phper/php/42347.htm
转载于:https://www.cnblogs.com/phpfans2012/archive/2012/04/10/2439970.html
php for循环语句的几种用法分析相关推荐
- PHP中for循环设计无穷循环,PHP中for循环语句的几种“变态”用法
PHP中for循环语句的几种"变态"用法 for语句可以说是PHP(同时也是多种语言)的循环控制部份最基本的一个语句了,for语句的执行规律和基础用法在这里就不多说,可以参见PHP ...
- php中用for循环制作矩形,PHP中for循环语句的几种变型
PHP中for循环语句的几种变型 2021-01-22 10:21:42406 for语句可以说是PHP(同时也是多种语言)的循环控制部份最基本的一个语句了,for语句的执行规律和基础用法在这里就不多 ...
- mysql中insert语句的五种用法
文章目录 前言 一.values参数后单行插入 二.values参数后多行插入 三.搭配select插入数据 四.复制旧表的信息到新表 五.搭配set插入数据 总结 前言 insert语句是标准sql ...
- python里else中文意思_Python循环语句中else的用法总结
前言 本文讨论Python的for-else和while-else等语法,这些是Python中最不常用.最为误解的语法特性之一. Python中的for.while等循环都有一个可选的else分支(类 ...
- php中循环语句有几种
循环语句有四种.分别是:1.for循环,语法"for(初始值;条件;增加值){循环体}":2.dowhile循环,语法"do{循环体}while(条件)":3. ...
- vb Do循环语句的几种形式
Do循环语句的几种形式:1. Do While i>1 '条件为True时执行... ... '要执行的语句Loop2.Do Until i>1 '条件为False时执行... ... ' ...
- Shell脚本中循环语句for,while,until用法
循环语句: BashShell中主要提供了三种循环方式:for.while和until. 一.for循环 for循环的运作方式,是讲串行的元素意义取出,依序放入指定的变量中,然后重复执行含括的命令区域 ...
- python中until的用法_Shell脚本中循环语句for,while,until用法
循环语句: Bash Shell中主要提供了三种循环方式:for.while和until. 一.for循环 for循环的运作方式,是讲串行的元素意义取出,依序放入指定的变量中,然后重复执行含括的命令区 ...
- python中else的用法_Python循环语句中else的用法总结
如何正确的理解python for循环中的else用法 程序中的else语句是便于处理某种行为,在循环的正常终止时执行:即以return或者break方式退出循环将会忽略else语句:存在contin ...
最新文章
- 用百度siteapp的uaredirect.js判断用户访问端而进行域名的自动跳转
- oracle10G导入导出数据文件
- boost::allocate_shared_noinit相关的测试程序
- zookeeper 3.4.6安装
- python3.7.2版本怎么安装ipython_Linux升级安装python2.7版本至python3.6版本,系统centos7...
- makemid+matlab,《MATLAB基础》双语课
- SkyCaiji蓝天数据采集发布系统源码v2.3
- java同步方法同步块_java使用同步方法和同步块的区别
- Codeforces 739B 	Alyona and a tree (树上路径倍增及差分)
- (转)Struts2的标签库
- JavaScript浏览器对象模型常用事件(2)
- 从网卡发送数据再谈TCP/IP协议—网络传输速度计算-网卡构造
- OneNote插件Notehighlight个性化设置
- 生信学习笔记:利用GATK call SNP
- CTO说出了我的成长慢的原因,价值10万:“在VUCA时代,必须掌握的12种永久技能。”...
- 3373. 进制转换(高精度除法)
- [转] 大三下,我们该做什么?
- 实现一个小程序分享图 wxml2canvas
- 曲率发动机和反重力装置原理
- windows CE 4.2、5.0、6.0下载地址
热门文章
- pytorch 模型加权
- 图片转文字用什么软件?分享几个文字识别软件
- R语言——多重共线性处理
- 付款条件Payment Terms
- 微信小程序应用”腾讯位置服务路线规划“插件
- win10 使用 toolkit 2.6.4 版,激活office2016 失败
- java对接顺丰(丰桥)查询物流接口
- html css留言板特效,JS模拟留言板 部分动画效果使用了 animate.css
- u盘安装linux后grub,U盘安装Centos 6.3 DVD,进入Grub后,出现问题
- POI导出excel执行公式 公式不生效问题