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
5y=96 y=97 y=98 y=99 y=100
1
2
3
4
5$do_exp = 100; do { $do_exp += 1; echo "do_exp=$do_exp" . "<br/>"; } while ($do_exp < 100);
1
2
3
4
5
6
7
8
9
10for ($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
10i=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
10value 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
2int(0) int(5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14for ($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
3value is :2 now break; value is :5 now continue; 跳出for循环
1
最后
以上就是可爱水壶最近收集整理的关于PHP基础之流程控制的全部内容,更多相关PHP基础之流程控制内容请搜索靠谱客的其他文章。
发表评论 取消回复