我是靠谱客的博主 可爱水壶,这篇文章主要介绍PHP基础之流程控制,现在分享给大家,希望可以做个参考。

PHP中的流程控制语句与其他编程语言类似,这里就不多说了,直接通过代码来看吧。

1.if条件语句

if(exp)

{

statement1;

}

else

{

statement2;

}

很容易理解,如果exp为true,那么执行statement1,否则执行statement2.此处exp为布尔类型。


当程序有多个分支的时候,可以使用else if 语句继续添加条件判断。


if(exp)

{

statement1;

}

else if(exp2)

{

statement2;

}

else

{

statemement3;

}

复制代码
1
2
3
4
5
6
7
8
$int_car_price = 80; if ($int_car_price > 100) { echo "Expensive Car Price. " . "<br/>"; } else if ($int_car_price < 100 && $int_car_price > 20) { echo "Good Car Price. " . "<br/>"; } else { echo "Cheap Car Price." . "<br/>"; }

输出:Good Car Price.


2.switch分支

switch语句类似与有多个判断条件的if语句。switch会将一个变量或者表达式的值与多个不同的值进行比较,若与其中一个的值相等,那么就执行该分支下的代码。

如果比较完所有分支还没有找到的话,那么就执行默认的代(default分支下的代码)。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
$x = 3; switch ($x) { case 0: echo "The variable is 0." . "<br/>"; break; case 1: echo "The variable is 1." . "<br/>"; break; case 2: echo "The variable is 2." . "<br/>"; break; case 3: echo "The variable is 3." . "<br/>"; break; default: echo "The variable is not found." . "<br/>"; break; }

输出:The variable is 3.


3.while语句

语法格式:

while(exp)

{

statement;

}

当exp为真时,执行里面的代码。先进行判读,然后决定是否执行。

复制代码
1
2
3
4
5
$y = 95; while ($y < 100) { $y += 1; echo "y=$y" . "<br/>"; }

输出:
复制代码
1
2
3
4
5
y=96 y=97 y=98 y=99 y=100

4.do while语句
语法格式:
do
{
statement;
}while(exp);

和while语句类似,唯一的区别在与do while 语句会先执行do语句块的代码,然后判断exp值来决定是否继续执行代码块。
也就是说,该语句不论exp值为true或者false都至少执行一次。
复制代码
1
2
3
4
5
$do_exp = 100; do { $do_exp += 1; echo "do_exp=$do_exp" . "<br/>"; } while ($do_exp < 100);

输出:do_exp=101

5.for循环
这是我们最熟悉的语句了吧,
语法格式:
for(exp1;exp2;exp3)
{
statement;
}
该语句先执行exp1,然后执行代码块,在执行exp3,然后判断exp2表达式的条件真假,如果为真,则继续执行代码块,反之跳出循环。
特别说明:exp2可以是多个表达式,表达式之间用逗号分隔,在程序执行过程中,所有表达式都会被计算,但是最终只取最后一个表达式的结果。如果exp2为空,则表示进行无限循环,此时我们可以在代码块中加入相应的判断语句来结束循环。
复制代码
1
2
3
4
5
6
7
8
9
10
for ($i = 0; $i < 10; $i++) { echo "i=$i" . "<br/>"; } for ($i = 0;; $i++) { if ($i >= 10) { break; } echo "i=$i" . "<br/>"; }


两个for语句的输出是相同的:

复制代码
1
2
3
4
5
6
7
8
9
10
i=0 i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9

6.foreach语句

foreach语句是循环遍历数组时常用的方法,它仅仅能够用于数组和对象。

语法格式:

foreach(array_exp as $value)

{

statement;

}

或者

foreach(array_exp as $key => $value)

{

statement;

}


复制代码
1
2
3
4
5
6
7
8
$array = [0, 1, 2, 3, 4]; foreach ($array as $value) { echo "value is :$value" . "<br/>"; } foreach ($array as $key => $value) { echo "value is :$value key is :$key" . "<br/>"; }


输出:

复制代码
1
2
3
4
5
6
7
8
9
10
value is :0 value is :1 value is :2 value is :3 value is :4 value is :0 key is :0 value is :1 key is :1 value is :2 key is :2 value is :3 key is :3 value is :4 key is :4


值得一提的是在php7中,foreach是对数组的复制操作,也就是说在循环过程中对数组的修改不会影响循环行为。但是引用类型的循环时会对数组本身产生影响。


复制代码
1
2
3
4
5
6
7
8
9
10
11
12
$arrry2 = [0]; foreach ($arrry2 as $value) { $arrry2[0] = 5; var_dump($value); echo "<br/>"; } foreach ($arrry2 as &$value) { $arrry2[0] = 5; var_dump($value); echo "<br/>"; }


输出:

复制代码
1
2
int(0) int(5)


7.跳转语句
跳转语句包含break,continue以及goto语句。break和continue是在循环语句中使用。利用goto语句程序员可以在同一个文件和作用域内进行任意位置的跳转。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
for ($a = 0; $a < 10; $a++) { if ($a == 2) { echo "value is :$a now break;" . "<br/>"; } if ($a == 5) { echo "value is :$a now continue;" . "<br/>"; } if ($a == 8) { goto a; } } a: echo "跳出for循环" . "<br/>";

输出:
复制代码
1
2
3
value is :2 now break; value is :5 now continue; 跳出for循环




复制代码
1

最后

以上就是可爱水壶最近收集整理的关于PHP基础之流程控制的全部内容,更多相关PHP基础之流程控制内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(105)

评论列表共有 0 条评论

立即
投稿
返回
顶部