批改状态:合格
老师批语:整体写的很好!不过文章的排版要注意一下!
任何一门编程语言, 都会有三种流程控制: “顺序”, “分支”, “循环”
- 顺序: 是最基本的执行流程, 执行顺序与源码的书写顺序一致
- 分支: 是程序具有人工智能最重要的工具, 可根据预置条件判断代码片断是否需要执行
- 循环: 是计算机最擅长的领域, 计算机从开机到关机循环无处不在,整个程序就是一个循环
if )代码示例:
<?php// 流程控制之分支判断// 单分支$count = 10;// 单价$price = 50;// 数量$total = 0;// 金额$discount = 1;//折扣率// 大于10件,9折if ($count >= 10 && $count < 20):// 大于10件小于20件,9折$discount = 0.9;endif;//总金额=单价*数量*折扣率;$total = $count * $price * $discount;echo "购买数量: $count , 总金额: $total, 折扣率: $discount <hr>";
图片示例:
if - else )代码示例:
<?php// 流程控制之分支判断// 双分支$count = 10;// 单价$price = 50;// 数量$total = 0;// 金额$discount = 1;//折扣率// 大于10件,9折if ($count >= 10 && $count < 20):// 大于10件小于20件,9折$discount = 0.8;else:$discount = 1;endif;$total = $count * $price * $discount;echo "购买数量: $count , 总金额: $total, 折扣率: $discount <hr>";
图片示例:
if - elseif - else )代码示例:
<?php// 流程控制之分支判断// 多分支$count = 35;$price = 1;$discount = 1;if ($count >= 10 && $count < 20) {// 当$count大于或等于10小于20时将打9折$discount = 0.9;} elseif ($count >= 20 && $count < 30) {// 当$count大于或等于20小于30时将打8折$discount = 0.8;} elseif ($count >= 30) {// 当$count大于30时将打7折$discount = 0.7;} else {// 未达到金额要求时,默认不打折$discount = 1;}$total = $count * $price * $discount;echo "购买数量: $count , 总金额: $total, 折扣率: $discount <hr>";
图片示例:
switch - case - break)代码示例:
<?php// 流程控制之分支判断// 多分支$count = 35;$price = 1;$discount = 1;switch (true) {case $count >= 10 && $count < 20:$discount = 0.9;break;case $count >= 20 && $count < 30:$discount = 0.8;break;case $count >= 30:$discount = 0.7;break;default:$discount = 1;}$total = $count * $price * $discount;echo "购买数量: $count , 总金额: $total, 折扣率: $discount <hr>";
图片示例:
注释:
while: 入口判断( 必须将循环变量初始化操作放在while循环外部)do - while: 出口判断for: 计数式foreach: 遍历数组
while代码示例:
<?php// 流程控制之循环// while() 根据循环条件的判断时机有二种形式,入口判断 和出口判断// 必须将循环变量初始化操作放在while循环外部$moblie = ['iphone', 'huawei', 'samsung', 'vivo', 'oppo'];$i = 0;$result = '';while ($i < count($moblie)) {$result = $moblie[$i];// 循环体内必须要有循环变量的更新语句, 否则会进入死循环$i++;}echo rtrim($result, ', ') . '<br>';
图片示例:
do - while代码示例:
$moblie = ['iphone', 'huawei', 'samsung', 'vivo', 'oppo'];$i = 0;$result = '';do {$result = $moblie[$i];// 循环体内必须要有循环变量的更新语句, 否则会进入死循环$i++;} while ($i > count($moblie));// 出口判断, 不论条件是否成立, 至少会执行一遍循环体, 循环条件显然不成立, 但仍会输出第一个元素echo rtrim($result, ', ') . '<br>';
图片示例:
for代码示例:
<?php// 流程控制之循环//语法: for(循环变量初始化; 循环条件; 更新循环条件) {循环语句}$mobile = ['iphone', 'huawei', 'samsung', 'vivo', 'oppo'];$result = '';for ($i = 0; $i < count($mobile); $i++) {$result =$mobile[$i];}//echo rtrim($result, ', ') . '<br>';
图片示例:
4.使用for ( )循环遍历索引数组
代码示例:
<?php// 流程控制之循环$name = ['id'=> 34, 'username'=>'连衣裙', 'price'=> 1122];// 用for()循环遍历索引数组, 效果与foreach()是一样的foreach ($name as $key => $value) {echo "$key => $value <br>";}
图片示例:
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号