PHP中for循环语句的几种变型

2021-01-22 10:21:42406

for语句可以说是PHP(同时也是多种语言)的循环控制部份最基本的一个语句了,for语句的执行规律和基础用法在这里就不多说,可以参见PHP手册for语句部分。PHP手册中对它的语法定义如下:

for(expr1;expr2;expr3)

statement

下面说说for语句几种有用的变型。

1、无限循环

首先是人尽皆知的无限循环(亦可称“死循环”)。由于空表达式null在语法上是有效的,所以我们可以把for语句的三个表达式留空,这样就会产生不断执行for嵌套语句的效果。

for(;;){

//放置需要不断执行的语句

}

?>

虽然有一些任务会使用到无限循环,但是大多数程序任务,特别是PHP所能涉及的领域,在使用无限循环时都会添加一些终止循环的条件。

for(;;){

//如果是公元2199年,则跳出循环

if(date('Y')=='2199'){

break;

}

}

?>

2、使用空表达式

接下来就是说说在初始化语句expr1中使用null语法,留空expr1最常见的作用就是完成更为复杂的初始化工作。

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语句中使经常被忽略的一个特性。如下面的例子,在一般的任务中用到的一般会是双重循环,三重以上的循环一般意义不大。

for($i=0,$j=10;$i<=10;$i++,$j--){

echo"$i+$j=10\r\n";

}

?>

以上代码将输出:

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

4、更为复杂的表达式

如果把for语句的三个表达式写得复杂一些,则可以用于优化算法。甚至可以使用没有循环体的for语句来完成一些任务。比如计算累加或阶乘:

//计算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借助了C语言的语法,一定程度上也会拥有C的特性,比如说强大的for循环语句就是一个典型的例子。

点击这里复制本文地址

以上内容由聚米学院网友整理呈现,如对侵犯您的权益,请联系邮箱:fzsbm@qq.com

php中用for循环制作矩形,PHP中for循环语句的几种变型相关推荐

  1. pdo_fetch执行mysql_PDO中执行SQL语句的三种方法

    在PDO中,我们可以使用三种方式来执行SQL语句,分别是 exec()方法,query方法,以及预处理语句prepare()和execute()方法~大理石构件来图加工 在上一篇文章<使用PDO ...

  2. python中for循环和while循环的区别_Python中for循环和while循环有什么区别?

    for循环和while循环有什么区别?众做周知,循环是Python中最基础也是最常见的知识点之一,下面我们来一起好好学习一下for循环和while循环,并对比分析两者的使用区别,帮助Python初学者 ...

  3. python中for循环和while循环的区别_Python中for循环语句和while循环语句有何不同

    原标题:Python中for循环语句和while循环语句有何不同 前面两期文章已经为大家分别讲解,for循环语句和while循环语句,两种都是化繁琐为简单的Python循环语句,选择困难症已经不知道该 ...

  4. php循环实现金字塔,PHP中使用循环实现的金字塔图形

    这篇文章主要介绍了PHP中使用循环实现的金字塔图形,本文是一篇PHP的课堂笔记,完成老师的作业总结而来,需要的朋友可以参考下 今天学习了最基础的PHP条件和循环语句,最后老师提了几个问题,其中一个实现 ...

  5. do matlab的 while循环_在MATLAB中,循环控制语句可以用for、while或do-while进行控制...

    在MATLAB中,循环控制语句可以用for.while或do-while进行控制 更多相关问题 [单选,A4型题,A3/A4型题] 28岁初产妇,孕32周,全身水肿及头痛就诊.查体:血压170/110 ...

  6. js中的for循环如何跳出,js中for循环的两种语法

    js几种for循环的几种用法 谷歌人工智能写作项目:小发猫 js,for循环是怎么运行的? typescript有哪些变化. 最普遍的介绍:for循环是JavaScript中最常用的循环,标准for循 ...

  7. python循环语句打印矩形_Python中使用循环语句打印三角形、菱形

    原博文 2017-08-19 11:20 − 前言:在学习开发语言循环语句的使用过程中,经常会打印各种形状来验证对循环语句的熟练掌握程度,接下来就使用python来打印多种形状练习. 如下示例中:变量 ...

  8. java退出循环吗,在Java中退出循环

    我正在使用 Java,但我想这个问题适用于任何语言.我只是想问一下,使用布尔值退出循环是更好的做法,我在循环中切换或只使用break; 例如,我只是在写一个方法来获得国际象棋中女王的有效动作. pri ...

  9. python中for循环和while循环的区别_python中while循环和for循环的定义和详细的使用方法...

    1.循环的定义,反复做某事,具有明确的开始和结束. 2.在Python中循环有while和for两种方式: While循环:1)语法结构 >>> while 条件: ... 需要循环 ...

最新文章

  1. Eclipse字体设置
  2. 史上最让数学家无奈的规定!背后真相让人不敢相信,可是没有人能证明对错.........
  3. mongodb mysql json数据_使用MongoDB与MySQL有很多JSON字段?
  4. python安装失败无法访问_错误:由于环境错误而无法安装包错误:[WinError 5]访问被拒绝:...
  5. Android的虚拟机Dalvik 介绍
  6. aliyun maven 添加jar_Maven介绍及安装
  7. IDEA 忽略CSS错误
  8. 战地1服务器性能红色,FPS《战地1》PC性能测试:对显卡要求不高但很吃CPU
  9. d3.js——饼状图
  10. Microsoft Office SharePoint Server 2007 Trial Version已经可以下载了
  11. 华为手机信息不弹屏了为什么_华为手机顶部消息弹窗怎么关闭?
  12. 伴随矩阵介绍及C++实现
  13. vue中element中的input框和laod中防抖和节流结合使用(性能优化)使用lodash相关方法
  14. strut2 上传文件
  15. java isreachable_Java网络编程从入门到精通(12):使用isReachable方法探测主机是否可以连通...
  16. docker更改映射端口(实践篇)
  17. Touch in Android
  18. SDU CS 期末考回忆版合集
  19. DOS命令/批处理文件大全
  20. [附源码]PHP计算机毕业设计-报刊征订管理系统(程序+LW)

热门文章

  1. 小程序向webview传参_独家 | 支付宝小程序向个人开发者开放公测
  2. ckeditor java 上传_CKEditor粘贴图片自动上传到服务器(Java版)
  3. mysql多线程使用一个链接_探索多线程使用同一个数据库connection的后果
  4. python3兼容python2 print_python 字符串 r raw Python2 和 Python3 的区别及兼容技巧
  5. oracle迁移undo表空间,oracle切换undo表空间
  6. python显示数据长度_python – 获取CSV的长度以显示进度
  7. python合并多个pdf_python合并多个pdf文件
  8. Tensorflow代码转pytorch代码 函数的转换
  9. mysql数据库参数
  10. 问题 J: 寻找复读机【模拟】