条件控制语句
一、if 语句 和 if .. else 语句
if 语句 翻译过来就是 如果这个情况,条件成立,则执行大括号里面的语句。
if(expr)
{
//如果条件成立(expr表达式为真),则执行该语句
Statement;
}
if … else 语句 翻译过来就是 如果这个情况,添加成立,则执行if 后面大括号里面的语句,否则执行else 后面大括号里面的语句。
if(expr)
{
//如果条件成立(expr表达式为真),则执行该语句
Statement;
}
else
{
//如果条件不成立(expr表达式为假),则执行该语句
Statement;
}
二、else if 语句
else if 翻译过来就是那么如果,如果条件1成立,执行条件1的语句,那么条件2成立,执行条件2的语句,否则执行最后的else 的语句。
if(expr1)
{
//如果expr1表达式 为真,执行该语句
Statement;
}
elseif(expr2)
{
//如果expr2表达式 为真,执行该语句
Statement;
}
...
else
{
//条件都不满足,执行该语句
}
注意:php语言的elseif 和 else if(else 和if 中间有个空格)都是一样的效果。
三、switch …case 多分支/多重判断语句
elseif 如果条件多了,使用就会十分繁琐。为了避免这个问题,所以可以使用switch 来多重判断。
switch(variable)
{
case value:
Statement1;
break;
case value2:
...
default:
default statement;
break;
}
switch 语句根据 variable 的值,依次与case 中的value值进行比较,如果不相等,继续查找下一个case。如果相等,就执行对应的语句,执行结束后如果条件满足会继续往下执行,直到switch语句结束或者遇到break语句为止。这说明它可以跳跃多个case执行,直到遇到有break或者语句结束。default是语句的默认值,是case条件都不满足的时候执行,和else 效果类似。
循环控制语句
一、while 循环语句
while(expr){
Statement;
}
如果expr表达式的值为真,则资讯statemet 语句,执行后再执行expr表达式,如果为真继续执行,如果为假,则跳出循环。
二、do..while语句
do
{
Statement;
}
while(expr);
do while 语句要比while语句多循环一次,while表达式为假的时候,while循环会直接跳出当前循环,而do while会先执行一遍程序块,然后再对条件表达式进行判断。
三、for 语句
for(expr1;expr2;expr3)
{
Statement;
}
expr1表达式 是第一次循环时无条件取一次值。expr2表达式是在每次循环开始前求值,如果值是真的,则执行statement 语句,如果是假的就跳出循环。继续往下执行。expr3表达式 是在每次循环后被执行。
for 语句一定要保证循环能够结束,无期限的循环将导致程序的崩溃。
四、foreach 语句
foreach(array_expression as $value)
{
Statement;
}
或
foreach(array_expression as $key => $value)
{
Statement;
}
foreach 只能用于数组和对象。将遍历数组array_expression。每次循环的时候,将当前数组的值赋值给$value(或 $key和$value),同时将数组指针向右移动直到遍历结束。当使用foreach 语句时候,数组指针自动被重置,所以不需要手动设置指针位置。
当试图使用foreach 语句用于其他数据类型或者未初始化的变量的时候会产生错误,为了避免这个问题,可以使用is_array()函数来先判断变量是否是数组类型,如果是再进行操作。
五、流程控制的另一种书写格式。
在复杂的php的页面里,如果包含了多个条件控制语句,循环控制语句和函数,在查找相关匹配的大括号会非常麻烦。所以php提供了另一个书写模式,包括if,while,for,foreach和switch 都可以使用。格式是使用冒号“:”替代左边的大括号“{”。使用endif;、endwhile;、endfor;、endforeach;、endswitch; 来代替右边的大括号“}”
例子:用while,do while,for来计算1+2+3+4+5+…+100的和
";
//do ... while
$total = 0;
$val = 0;
do{
$total += $val;
$val += 1;
}
while($val<=100);
echo "while的和:$total
";
//for
for($val=1;$val<=100;$val++)
{
$val+= $val;
}
echo "for的和:$total
";
?>
输出结果:
while的和:5050
while的和:5050
for的和:5050
明天来介绍break和continute在循环的使用。
相关文章
本站已关闭游客评论,请登录或者注册后再评论吧~