默认情况下,代码是从上往下,从左往右执行的,流程控制语句亦是如此。在PHP的领域里,流程控制语句分为两大类,一类是条件控制语句,另一类是循环控制语句。
什么是流程控制语句呢?它有点像我们语文学习到的关联词,比如:如果...就...。在PHP编程中,这种关联词属于条件控制语句。
条件控制语句有两个,一个是if条件控制语句,另一个是switch条件控制语句,示例如下:
<?php
// if条件控制语句
// 下面这个语句返回1,因为5>4是对的
if (5>4) {//括号里面的是条件
// 如果5>4是对的就会执行echo 1;
echo 1;
}else{
// 如果5>4是错的就会执行echo 1;
echo 0;
}
// 如果有多个条件,用else if添加条件
// 因为$a=10>9,所以下面这个语句返回123
$a=10;
if ($a > 9) {
echo 123;
}else if ($a == 9) {
echo 234;
}else{
echo 345;
}
// switch条件控制语句
// switch语句必须有break中断程序,避免一直执行
// 以下这个句子返回my apple
// $b是"apple",case为"apple"的语句执行的结果就是返回值
$b="apple";
switch ($b) {
case 'banana':
echo "my banana";
break;
case 'apple':
echo "my apple";
break;
default:
echo "nothing";
break;
}
?>
在PHP的流程控制语句中,还有一种语句,叫循环控制语句。循环语句会不断循环过程,直到条件是错误的时候,才会停止执行。
循环控制语句有4个,分别是while,do while,for,foreach,示例如下:
<?php
// while循环语句
// 以下语句返回 5 6 7 8 9 10
$i = 5;
while ( $i<= 10) {//括号里面是条件
echo $i++;
}
// do while循环语句
//以下语句先执行do,再执行while
// 执行了while,才开始返回执行后的值
// 以下语句返回 2 3 4 5
$i = 1;
do {
$i++;
echo $i;
} while ($i <= 5);
// for循环语句
// $i=0是初始值,$i < 5是条件,$i++是以1递增
// 以下语句返回 0 1 2 3 4
for ($i=0; $i < 5; $i++) {
echo $i;
}
// for语句可以多个条件同时进行
// 条件必须都是对的,才能继续执行
// 以下语句返回 0+2
for ($i=0,$j=2; $i < 5,$j<3; $i++,$j++) {
echo $i."+"$j;
}
// foreach循环语句,用来遍历数组
// foreach可以获取到数组里面的每一个值
// 以下语句返回 0 1 2
$arr = [0,1,2];
foreach ($arr as $value) {
echo $value;
}
?>
另外,在流程控制语句中,有三个关键字帮助流程跳转,那就是break,continue,goto,具体示例如下:
<?php
// break,用来终止本次循环
// 以下语句中,当$i为2时将会终止循环
// 以下语句返回 0 1
for ($i=0; $i < 5; $i++) {
if ($i==2) {
break;
}
echo $i;
}
// continue,用来跳出本次循环,不影响下一个循环
// 以下语句中,当$i为2时将会跳出循环
// 以下语句返回 0 1 3 4
for ($i=0; $i < 5; $i++) {
if ($i==2) {
continue;
}
echo $i;
}
// goto,用来跳转到程序的另一个位置
// 以下语句中,当$i为2时将会跳到a的位置
// 以下语句返回 0 1 你个2货!
for ($i=0; $i < 5; $i++) {
if ($i==2) {
goto a;
}
echo $i;
}
a:
echo "你个2货!";
?>
以上便是流程控制语句的大致内容,建议大家好好去掌握。基础功扎实,对进阶很有帮助,流程控制语句也是PHP的基础知识点。