for循环只是一个多一点的代码,同时循环添加到它。而所涉及的一个循环的共同任务是:

设置一些计数器变量的初始值。

请检查条件语句是正确的。

执行中的代码循环。

增量在每个迭代结束通过循环计数器。

for循环允许你定义一个简单的代码行这些步骤。它似乎有一种奇怪的形式,所以一定要密切注意语法用!

for 循环的语法是:

for (expr1; expr2; expr3)

statement

第一个表达式(expr1)在循环开始前无条件求值一次。

expr2 在每次循环开始前求值。如果值为 TRUE,则继续循环,执行嵌套的循环语句。如果值为 FALSE,则终止循环。

expr3 在每次循环之后被求值(执行)。

每个表达式都可以为空或包括逗号分隔的多个表达式。表达式 expr2 中,所有用逗号分隔的表达式都会计算,但只取最后一个结果。expr2 为空意味着将无限循环下去(和 C 一样,PHP 认为其值为 TRUE)。这可能不像想象中那样没有用,因为经常会希望用 break 语句来结束循环而不是用 for 的表达式真值判断。

看简单实例一

FOR ($i = 0; $i <= 2; $i++)

{

print "value is now " . $i . "
";

}

输出值

value is now 0

value is now 1

value is now 2

在第一循环,$i=0,这意味着表达,($i<= 2),为ture。因此,打印语句执行时,$i得到加1,变成1。

在第二循环,$ = 1,这意味着表达,($i<= 2),为ture。因此,打印语句执行时,$i得到加1,变成2。

在第三迭代,$i= 2,这意味着表达,($i<= 2),为ture。因此,打印语句执行时,$i递增,成为1 3。

在第四迭代,$i= 3,这意味着表达,($i<= 2),是假的。因此,PHP不去执行循环,不执行打印语句。

实例二

$brush_price = 5;

echo "

echo "

Quantity";

echo "

Price";

for ( $counter = 10; $counter <= 100; $counter += 10) {

echo "

";

echo $counter;

echo "

";

echo $brush_price * $counter;

echo "

";

}

echo "

";

输出值

Quantity Price

10 50

20 100

30 150

40 200

50 250

60 300

70 350

80 400

90 450

100 500

可以参考以下的例子,它们都显示数字 1 到 10:

/* example 1 */

for ($i = 1; $i <= 10; $i++) {

echo $i;

}

/* example 2 */

for ($i = 1; ; $i++) {

if ($i > 10) {

break;

}

echo $i;

}

/* example 3 */

$i = 1;

for (;;) {

if ($i > 10) {

break;

}

echo $i;

$i++;

}

/* example 4 */

for ($i = 1, $j = 0; $i <= 10; $j += $i, print $i, $i++);

?>

当然,第一个例子看上去最正常(或者第四个),但用户可能会发现在 for 循环中用空的表达式在很多场合下会很方便。

PHP 也支持用冒号的 for 循环的替代语法。

for (expr1; expr2; expr3):

statement;

...

endfor;

我们经常需要对下面这样的数组进行遍历:

/*

* 我们想要在遍历的过程中改变以下数组中某些元素的值

*/

$people = Array(

Array('name' => 'Kalle', 'salt' => 856412),

Array('name' => 'Pierre', 'salt' => 215863)

);

for($i = 0; $i < sizeof($people); ++$i)

{

$people[$i]['salt'] = rand(000000, 999999);

}

?>

以上代码的问题,在于for的第二个表达式会导致代码执行很慢--因为每次循环时都要 计算一遍数组的长度。由于数组的长度始终不变,我们可以用一个中间变量来存储数组长度, 然后用这个变量作为for循环的第二个表达式。这样在循环的时候就可以直接使用该变量的值, 不用每次重新计算。 如下:

$people = Array(

Array('name' => 'Kalle', 'salt' => 856412),

Array('name' => 'Pierre', 'salt' => 215863)

);

for($i = 0, $size = sizeof($people); $i < $size; ++$i)

{

$people[$i]['salt'] = rand(000000, 999999);

}

?>

fou循环 php 剩余次数_php for 循环语句使用方法详细说明相关推荐

  1. php循环语句w,php ftpconnectphp for 循环语句使用方法详细说明

    for循环只是一个多一点的代码,同时循环添加到它.而所涉及的一个循环的共同任务是: 设置一些计数器变量的初始值. 请检查条件语句是正确的. 执行中的代码循环. 增量在每个迭代结束通过循环计数器. fo ...

  2. mysql plsql 循环_PL/SQL for...loop循环语句

    FOR LOOP语句是一种重复控制结构,可以有效地编写一个需要执行特定次数的循环. 语法 下面演示如何使用FOR LOOP语句 - FOR counter IN initial_value .. fi ...

  3. 计算机c语言循环作业,计算机C语言循环语句的应用研究

    [摘要]基于计算机C语言循环语句的应用分析,首先要明确C语言应用现状,然后阐述C语言循环语句的分类及特点,最后详细论述循环语句的应用要点,针对while循环语句.dowhile循环语句.for循环语句 ...

  4. SAS学习笔记之《SAS编程与数据挖掘商业案例》(4)DATA步循环与控制、常用全程语句、输出控制...

    SAS学习笔记之<SAS编程与数据挖掘商业案例>(4)DATA步循环与控制.常用全程语句.输出控制 1. 各种循环与控制 DO组 创建一个执行语句块 DO循环 根据下标变量重复执行DO和E ...

  5. phpbreak跳出几层循环_4.2.5 PHP break语句跳出循环

    Posted by 撒得一地 on 2016年2月28日 in PHP入门教程 国外稳定加速器推荐 vypr | Nord 在使用循环语句时,有时不确定循环的次数,遇到这样的情况可以使用无限循环,如: ...

  6. 【转】详谈for循环里面的break和continue语句

    https://www.jb51.net/article/119099.htm 转载  更新时间:2017年07月20日 07:53:06   投稿:jingxian   我要评论 下面小编就为大家带 ...

  7. c++语言while循环,c++ c语言while 循环语句入门基础教程

    c++ c语言while 循环语句入门基础教程 我们来看While 循环语句,它跟 For 循环区别在于,For 循环一般知道循环次数,在第一行里头就指明了,而while循环一般不知道循环次数,下面我 ...

  8. python循环一段代码_Python循环语句代码详解:while、for、break

    导读:循环语句是指重复执行同一段代码块,通常用于遍历集合或者累加计算.Python中的循环语句有while语句.for语句. 01 while循环 循环语句是程序设计中常用的语句之一.任何编程语言都有 ...

  9. python 循环添加array_python常用的基本语句介绍

    今天介绍一下python常用的语句,从以下几个方面来说明. 1. 数据类型:列表 2. 数据类型:元组 3. 数据类型:字典 4. 条件语句:if--else-- 5. 循环语句:for循环 6. 循 ...

最新文章

  1. SpringBoot实现热部署(修改class不需要重启)
  2. mybatis mapper.xml dtd_全栈开发踩坑之路4-用MyBatis实现服务
  3. 全球及中国家用空气净化器市场销售需求及营销策略模式分析报告2022-2027年
  4. centos7根目录root扩容操作记录
  5. Java排序:冒泡排序
  6. mm和mmm编译说明
  7. Python【每日一问】27
  8. Word如何设置单元格垂直居中
  9. 换位密码 java_矩形柱状换位加密方法
  10. 植物神经紊乱、焦虑症和抑郁症之间有哪些区别呢?
  11. 微信小程序校园生活小助手+后台管理系统前后分离VUE
  12. 蓝桥寒假训练1-2013年第四届蓝桥杯省赛
  13. 什么叫工业4.0?这篇接地气的文章终于讲懂了!
  14. 2.CUDA 编程手册中文版---编程模型
  15. 苹果电脑怎么查保修期?
  16. Surface reconstruction from unorganized points
  17. 语法解析及Antlr
  18. 健康管理系统3.0(微信小程序 + JQuery + html + 爬虫 + MySQL + spring boot 只用于学习,不可商用)
  19. OpenCV中将Mat RGBA4通道转换成RGB3通道
  20. Linux信号sigaction / signal

热门文章

  1. 半价秒杀,最后一天!戴尔i7高配电脑低至2750元!
  2. 阿里巴巴虾米的机器学习与深度学习进阶记
  3. mysql企业版多少钱_企业资质代办多少钱
  4. 01 | 顶层设计:微服务生态与 Spring Cloud Alibaba
  5. 整理Java相关的工具类Utils,持续更新中,建议收藏【目前更新至24】
  6. vuepress 2.x 集成百度统计
  7. JAVA——json序列化错误[hibernateLazyInitializer,handler,fieldHandler]解决方案
  8. HDU 3947 River Problem
  9. CG CTF WEB 综合题
  10. nginx实现http服务配置