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;

}

	$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分支下的代码)。

 	$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为真时,执行里面的代码。先进行判读,然后决定是否执行。

	$y = 95;
        while ($y < 100) {
            $y += 1;
            echo "y=$y" . "<br/>";
        }

输出:
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都至少执行一次。
 	$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为空,则表示进行无限循环,此时我们可以在代码块中加入相应的判断语句来结束循环。
        for ($i = 0; $i < 10; $i++) {
            echo "i=$i" . "<br/>";
        }

        for ($i = 0;; $i++) {
            if ($i >= 10) {
                break;
            }
            echo "i=$i" . "<br/>";
        }


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

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;

}


 	$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/>";
        }


输出:

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是对数组的复制操作,也就是说在循环过程中对数组的修改不会影响循环行为。但是引用类型的循环时会对数组本身产生影响。


 	$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/>";
        }


输出:

int(0) 
int(5) 


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

 	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/>";

输出:
value is :2 now break;
value is :5 now continue;
跳出for循环





                
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ava实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),可运行高分资源 Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值