PHP循环主要有四种:while,do…while,for,foreach。下面我们分开讲解每种循环的用法。

while语句:

只要指定的条件成立,则循环执行代码块。

格式:

while(expr)
{
    statement;
}

语义:首先判断expr,如果表达式expr为假则结束;如果表达式expr为真,执行statement语句,执行完毕再次判断expr,若表达式expr仍为真,则继续执行statement语句;直至表达式expr为假,结束。
例:

复制代码代码如下:
<?php
$i=1;
while($i<=5){
echo $i;
$i++;
}
?>

上面的例子示范了一个循环,只要变量 i 小于或等于 5,代码就会一直循环执行下去。循环每循环一次,变量就会递增 1,然后输入i的值;

do…while 语句:

首先执行一次代码块,然后在指定的条件成立时重复这个循环.
格式:

do{
    statement;
}

while(expr)语义:首先执行一次statement语句,然后再判断expr,如果表达式expr为假则结束;如果表达式expr为真,则继续循环执行statement语句,执行完毕再次判断expr,若表达式expr仍为真,则继续执行statement语句;直至表达式expr为假,结束。

注意:他和while的区别在于,do…while第一次不进行任何判断就执行一次语句,然后再进行判断条件是否成立,这里要注意,其他和while是一样的。
例子:

复制代码代码如下:
<?php 
$i=6;
do
  {
  $i++;
  echo "The number is " . $i . "<br />";
  } www.jbxue.com
while ($i<5);
?>

上面的例子示范了一个循环,我给变量i赋值6,这里很显然和while中的条件相比较是不成立的,但结果输入6,也就是之前说的do…while语句,他第一次没进行任何判断,先执行一次,然后再判断条件是否成立。

for 语句

:如果您已经确定了代码块的重复执行次数,则可以使用 for 语句。
语法

for (initialization; condition; increment)
{
  code to be executed;
}

语义:for 语句有三个参数。第一个参数初始化变量,第二个参数保存条件,第三个参数包含执行循环所需的增量。如果 initialization 或 increment 参数中包括了多个变量,需要用逗号进行分隔。而条件必须计算为 true 或者 false。
例子:

下面的例子会把文本 “Hello World!” 显示 5 次:

复制代码代码如下:
<?php
for ($i=1; $i<=5; $i++)
{
  echo "Hello World!<br />";
}
?>

foreach 语句:foreach 语句用于循环遍历数组。

每进行一次循环,当前数组元素的值就会被赋值给 value 变量(数组指针会逐一地移动) – 以此类推。
语法

foreach (array as value)
{
    code to be executed;
}

例子
下面的例子示范了一个循环,这个循环可以输出给定数组的值:

复制代码代码如下:
<?php
$arr=array("one", "two", "three");
foreach ($arr as $value)
{
  echo "Value: " . $value . "<br />";
}
?>

释义:首先我定义一个数组arr,然后我使用foreach来循环,其中($arr as $value)的意思是,把$arr数组中的值赋给$value,然后执行语句是输出$value的值。
输出的结果为:

one
two
three

PHP基础入门教程 PHP循环函数的更多相关文章

  1. Python基础入门教程

    Python基础入门教程 Python基础教程 Python 简介 Python环境搭建 Python 基础语法 Python 变量类型 Python 运算符 Python 条件语句 Python 循 ...

  2. Linux基础入门教程

    Linux基础入门教程 --------- Linux学习路径 Linux学习者,常常不知道自己改怎么学习linux:Linux初级,也就是入门linux前提是需要有一些计算机硬件相关的知识或是有一下 ...

  3. ECMAScript 6.0基础入门教程

    ECMAScript 6.0基础入门教程 转:https://blog.csdn.net/hexinyu_1022/article/details/80778727 https://blog.csdn ...

  4. [置顶] IOS 基础入门教程

    IOS 基础入门教程 教程列表: IOS 简介 IOS环境搭建 Objective C 基础知识 创建第一款iPhone应用程序 IOS操作(action)和输出口(Outlet) iOS - 委托( ...

  5. React Native基础&入门教程:初步使用Flexbox布局

    在上篇中,笔者分享了部分安装并调试React Native应用过程里的一点经验,如果还没有看过的同学请点击<React Native基础&入门教程:调试React Native应用的一小 ...

  6. Linux pwn入门教程(10)——针对函数重定位流程的几种攻击

    作者:Tangerine@SAINTSEC 本系列的最后一篇 感谢各位看客的支持 感谢原作者的付出一直以来都有读者向笔者咨询教程系列问题,奈何该系列并非笔者所写[笔者仅为代发]且笔者功底薄弱,故无法解 ...

  7. Mongodb最基础入门教程

      Mongodb最基础入门教程 如果想了解一下redis的入门教程,可以去看一下我的上一篇博客 Mongodb的安装大家可以参考一下其他博主的博客,这里我就不做介绍了.不过值得注意的是,在Linux ...

  8. 1.0 Android基础入门教程

    1.0 Android基础入门教程 分类 Android 基础入门教程 本教程于2015年7月开始撰写,耗时半年,总共148节,涵盖了Android基础入门的大部分知识,由于当时能力局限,虽已竭尽全力 ...

  9. WordPress安装:零基础入门教程

    WordPress安装:零基础入门教程 1主机空间要求要运行 WordPress,主机空间需满足以下条件.不过现在网络上的空间基本都可以,而且还让你随意定制Php和Mysql版本,至于空间和数据库大小 ...

随机推荐

  1. TRF7960天线参数试验

    CA1焊47pF就好了,不大用调,主要调CA2的值 图中CA2焊100pF时,读卡距离2cm左右 27pF                3.5cm左右 不焊 4cm左右 47pF 5cm左右 现在手 ...

  2. 创建FILE GEODATABASE 和栅格目录及向栅格目录中添加影像

    using System;using System.IO;using ESRI.ArcGIS.DataSourcesGDB;using ESRI.ArcGIS.DataSourcesRaster;us ...

  3. SQL Server 2012数据导入SQL Server 2008

    SQL Server 2012可以降级到2008吗?没有找到方法,似乎也不支持.整理了一个变通的方法,把2012的数据和结构导出,然后再导入2008. 在 SQL Server 2012 使用 Sql ...

  4. python(3)-lambda表达式

    >>> fun = lambda a: a+1 >>> fun(1) 2 >>> fun = lambda a,b: a+b >>&g ...

  5. 实现Square类,让其继承自Rectangle类,并在Square类增添新属性和方法,在2的基础上,在Square类中重写Rectangle类中的初始化和打印方法

    实现Square类,让其继承自Rectangle类,并在Square类增添新属性和方法,在2的基础上,在Square类中重写Rectangle类中的初始化和打印方法 #import <Found ...

  6. Scala中的Map

    映射 映射是对偶的集合. 声明映射 映射是对偶的集合. a.声明映射 b.映射中的键值对称作对偶,用( , )表示 c.当映射中不存在key时,取值会报错,解决方案是使用 contains方法,或者g ...

  7. UseAdaptiveSizePolicy与CMS垃圾回收同时使用导致的JVM报错

    系统在灰度环境上变更时发现JVM启动报错,详细检查JVM配置参数,发现新境了如下配置: -XX:+UseAdaptiveSizePolicy和-XX:+UseConcMarkSweepGC 初步猜想是 ...

  8. Android NDK开发之Android.mk文件

    Android NDK开发指南---Android.mk文件 博客分类: Android NDK开发指南   Android.mk文件语法详述 介绍: ------------ 这篇文档是用来描述你的 ...

  9. tomcat 安装

    升级系统之后很长一段时间没有用tomcat(主要是没做东西),这两天要开始干活了,发现竟然没法发用了....ok,重新整一遍.算是温习. 上次所有环境的搭建基本都是师兄帮我,自己做得东西很少,这次就正 ...

  10. android手机中图片的拖拉及浏览功能

    配置文件 activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/andro ...