PHP入门之流程控制

2021-01-16 08:12

阅读:460

YPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">

标签:结果   表单   执行   ase   post   src   alt   sum   技术   

前言

上一篇文章对PHP的一些类型和运算符进行了简单的讲解。PHP入门之类型与运算符
这篇简单讲解一下流程控制。结尾有实例,实例内容是用switch分支和for循环分别做一个计算器和金字塔。

分支控制

单分支控制
if语句 语法如下:
if(表达式){
语句1;
语句2;
...
}

双分支控制
if else语句。语法如下
if(表达式){
语句1;
语句2;
...
}else{
语句1;
语句2;
...
}
如果表达式为真,那么执行{}里面得。如果为假,直接执行else{}里面得语句。

举个例子:

$age=19;
if ($age>18){
    echo ‘你已经成年啦‘;             #因为$age=19 大于18,所以表达式为真,所以输出后面得。所以输出“你已经成年啦”
}else{
    echo ‘小可爱,你还未成年!‘;      
}

多分支控制
语法:
if(){
语句1;
...
}else if(){
语句1;
...
}else{
语句1;
...
}
这里得else if(){}可以加很多个。

举个例子,比如:

$age=3;
if ($age>18){
    echo ‘你已经成年啦‘;
}elseif($age>10 && $age5 && $age

多分支还有switch语句。语法如下。
switch(表达式){
case常量1:
break;
case常量2:
break;
case常量3:
break;
case常量4:
break;
...
}
举个例子:

$a=1;
switch ($a){
    case 1:
        echo ‘今天星期1‘;
        break;
    case 2:
        echo ‘今天星期2‘;     
        break;
    case 3:
        echo ‘今天星期3‘;
        break;
        //这里可以写很多个
    default:
        echo ‘输入有误‘;

}

这里需要注意得是,case语句得break不可以省略,否则无法跳出switch语句,继续向下执行,直到遇到break。还有一点需要注意得是,default语句放在哪里没影响,程序执行顺序是,先查找case语句,case语句没有符合得,在寻找default语句。
区分一下,什么时候用if语句,什么时候用switch语句。
当控制得是一个范围时,一般用if语句,当控制得是每个点时,用switch语句。

循环控制

for循环控制。
语法为for(循环初值;循环得条件;步长){
语句.....
}
举个例子:
for ($age=0;$age echo ‘
这是一个循环‘;
}
直到循环条件语句为假然后跳出循环。
技术图片
while循环
循环格式为:
while(循环控制){
循环语句;
}
举个例子:

$a=0;
while ($a这是while循环‘.$a;
    $a++;
}
#循环语句中一定要有控制语句,在这里是$a++,如果不加,0永远小于10,这个一个死循环。

do while循环
循环格式为:
do{
循环语句
}while(循环控制);
举个例子:

$i=0;
do{
    echo ‘
这是一个do while循环‘.$i; $i++; }while($i

实例

下面用一个具体的实例,巩固循环流程控制。

switch分支完成简单计算器。

先完成页面的设计,代码如下。


这是一个计算器
#由于是本地,所以将表单提交到okok.php。

请输入
请在输入
点击计算

显示到页面的内容如下
技术图片
接下来在okok.php中用switch分支进行核心运算。代码如下:

‘;

?>
返回初页面

现在来运算一下,输入123+456,查看返回结果。
技术图片

for循环打印金字塔

‘;
 }
?>

显示效果如图
技术图片
我们发现只是打印了一半的金字塔,如何补全呢?如果我们再控制一下前面每一行的空格和每行的*号是不是就可以了?我们来认证一下。将上面的代码补全。如下:

‘;
 }
?>

我们再进阶一下,如果将这个金字塔内部掏空,又该如何实现呢?我们想一下,是不是我们要只要控制好两个边缘的"*"号,其他地方控制填充空格就可以了,有了思路,我们看代码,又补充了哪些地方。看代码:

‘;
 }
?>

效果如下图
技术图片
咱们再进阶一下,如果将这个空心的三角翻转一下,打印出菱形,那么又该如何实现呢?是不是再原来的基础上再控制一下层数、"*"号、空格就可以完成呢。现在咱们看代码。

‘;
 }
     #翻转
     for ($i=5;$i>=0;$i--){
         #控制空格
         for ($k=0;$k‘;
 }
 ?>

效果如下
技术图片

小结

简单的说了一下流程控制,希望对大家有帮助。

PHP入门之流程控制

标签:结果   表单   执行   ase   post   src   alt   sum   技术   

原文地址:https://www.cnblogs.com/lxfweb/p/13380271.html


评论


亲,登录后才可以留言!