任何 php 脚本都是由一系列语句构成的。一条语句可以是一个赋值语句,一个函数调用,一个循环,一个条件语句或者甚至是一个什么也不做的语句(空语句)。语句通常以分号结束。
从执行方式上看,语句的控制结构分为以下三种:
1、 顺序结构:从第一条语句到最后一条语句完全顺序执行;
2、 选择结构:根据用户输入或语句的中间结果去执行若干任务;
3、 循环结构:根据某条条件重复地执行某项任务若干次,或直到达成目标即可。
php中 有三种控制语句用以实现选择结构与循环结构:
1、 条件控制语句:if、else、elseif和switch;
2、 循环控制语句:foreach、while、do while和for;
3、 转移控制语句:break、continue和return。
条件控制语句:
if语句,用法:
if(a)
statement1;
else
statement2;
解析:如果a为true,则执行statement1;否则执行statement2。
例子,代码:
<?php
$a = 59;//根据$a的值,判断是否及格。如果>=60则输出及格
if($a>=60){
echo “及格”;
}else
echo “不及格”;
?>
if···elseif···else语句,用法:
if(a)
statement1;
elseif(b)
statement2;
else
statement3;
解析:如果a为true,则执行statement1。否则,如果b的值为true,则statement2;否则执行statement3。当然:if语句也可以嵌套。
下面是个if···elseif···else的例子:
<?php
$a = 59;
if($a>=60) //在大于等于60的情况里在进行分类
{
if($a==100)
echo “满分”;
elseif($a>=90)
echo “优秀”;
else
echo “及格”;
}
else
echo “不及格”;
?>
switch语句,语法如下:
switch(a)
{
case val1:
statement1;
break;
case val2:
statement2;
break;
default:
statement3;
}
当一个case语句中的值和switch表达式a的值匹配时,php开始执行语句,直到switch程序段结束或者遇到第一个break语句为止
(如果没有遇到break,则php将继续执行下一个case)。
下面是一个没有break的例子:
<?php
switch($leve1)
{
case 3:
echo “高级”;
case 2:
echo “中级”;
case 1:
echo “初级”;
default:
echo “错误的等级值”;
}
?>
由此你想到了什么??
<?php
$level = 3;
switch($level)
{
case 3:
echo “赋予管理员权限”;
case 2:
echo “赋予站务权限”;
case 1:
echo “赋予版主权限”;
default:
echo “赋予普通用户权限”;
}
?>
与if相比switch达到了更高的效率:
<?php
$a = 59;
switch($a)
{
case $a == 100;
echo “满分”;
break;
case $a >= 90;
echo “优秀”;
break;
case $a >= 60;
echo “及格”;
break;
default:
echo “不及格”;
}
?>
那么循环语句是干嘛用的呢?当然是用于反复地执行某一个操作。
while 与do···while
while的语法:
while(a)
statement;
解析:只要while表达式中的a为true,就执行statement。
do···while的语法:
do
{
statements;
}
while(a)
do···while与while的区别只是在循环结束时do···while进行检查,不管循环的条件满足与否,do···while都将执行一次。
例如:
<?php
$a = 5; //先判断$a是否大于5,如果大于5则执行。
while($a>5)
{
echo “this is while.”;
$a–;
}
do //先执行do之内的语句,然后进行判断。
{
echo “this is do…while.”;
$a–;
}
while($a > 5)
?>
for语句,语法:
for(a;b;c)
statement;
分析:第一个表达式在循环开始时先无条件的执行一次,一般a都为赋值语句;b在循环开始前运行,如果为true,
则继续循环,执行循环的嵌套语句;c在循环之后执行,一般都是自加自减运算。
代码:
<?php
for($a = 5;$a > 5;$a–);
echo “this is for”;
?>
foreach语句,用于数组的遍历,以后将会学到。
转移控制语句
php中主要有三种转移控制语句:break、continue和return。
1、 break语句
break语句用于结束当前循环,break可以接受一个可选的数字参数来决定跳出几重循环。
例子:
<?php
$a = 5;
$b = 10;
while($a <100) //$a<100开始循环
{
echo “a = “.$a.”<br>”; //输出$a,“.”时连接运算符,相当于java中的“+”
while($b > 0) //$b>0,开始循环
{
echo “b = ” .$b.”<br>”; //输出$b
$b–;
if($b == 3 ) //如果$b==3,则跳出while($b>0)
break;
}
$a++;
if($a == 30)
break; //如果$a==30,就跳出while($a<100)
}
?>
continue语句
continue用于跳出本次循环,与break不同的是,continue跳出后将继续执行下一次循环。
return语句 return语句用于结束一个函数或者一个脚本文件。如果在一个函数中调用return语句将立即结束这个函数的执行,并将它的值作为参数返回。
当然,在php中也可以将return当做一个函数来使用。如return(),并在括号内写上要返回的参数。这种用法并不常见。
以上就是php基础篇之流程控制语句简单教程的详细内容。