PHP[入门]P09-流程控制

这是我早期的 php 学习笔记,php 的学习版本版本是 5.6、7,🐟2020/05/06年从有道笔记导出至此。

day09-流程控制

settype()

可变变量

变量的引用

1.流程控制中的三种结构

顺序结构 分支结构 循环结构

2. 分支结构

  1. 单向分支

语法结构:

if (表达式) {

语句体;

}

执行流程:

首先判断表达式 如果表达式为真,那么执行大括号里面的语句ti;如果为假,跳过大括号里的继续往下执行;

  1. 双向分支

语法结构:

if (表达式) {

真区间;

} else {

假区间;

}

执行流程:

首先判断表达式是否为真,为真走真区间,如果表达式为假,走假区间

永远不会同时执行真区间的语句体和假区间的语句体

  1. 多向分支(巢状分支)

语法结构:

if (表达式1) {

语句体1;

} else if (表达式2) {

语句体2;

} else if (表达式3) {

语句体3;

} else {

语句体4;

}

执行流程:

首先判断表达式1 如果表达式1为真执行语句体1然后结束整个结构.若为假判断表达式2...如果所有的表达式都为假的时候,执行else

当所有的情况都做了判断,那么最后else 可以省略

一般用于区间判断

  1. 嵌套分支

5)switch...case (break,default)

用于确定值判断

语法结构:

switch (变量) {

case 值1:

语句体1;

break;

case 值2:

语句体2;

break;

case 值3:

语句体3;

break;

default:

语句体4;

}

执行流程:

拿到这个变量值以后 进行case值的对比,如果匹配成功走对应case区间;然后比如break跳出switch结构 如果 case所有的对比都不匹配,走default

基本上每个case 都有一个break 如果没有break,一直往下执行直到碰到break结束整个结构

case后边值可以是标量(最好不放浮点),常量来做比较

当所有的情况都罗列出来那么default可以不加

多个case可以执行同样的语句

3.循环结构

for

语法结构:

for (变量初始化; 循环条件; 计数条件) {

循环体;

}

执行流程:

进入for首先且执行一次变量初始化,然后判断循环条件是否满足,为真执行循环体;再执行计数条件-->继续判断循环条件,为真继续执行循环体,再执行计数条件,知道循环条件为假,那么结束整个循环

【注】:双层for循环

第一层控制行,第二层控制列

特点:灵活多变的

1.第一个表达式跟第三个表达式可以提出来,但是第一个要放上分号占位表示第二就是循环条件

2.循环提交可以省略 但是会出现死循环 这时候要用break

while

语法结构:

while (循环条件) {

循环体;

}

执行流程:

首先判断循环条件,如果为真执行循环体,为假no执行

[zhuyi]while非常容易写出死循环那么两种情况 第一加上计数条件 第二种break;

do..while

语法结构:

do {

循环体;

} while (循环条件);

执行流程:

首先进入的时候先执行一次do大括号里的循环体、然后再去while判断循环条件,如果为真执行do里的循环体,直到while条件为家终止循环

while 跟do..while区别

while:先判断再执行

do..while:先执行再判断 (至少执行一次)

goto:

直接跳到指定的标号处

echo '村长你的牙好亮啊<br />';

goto test;

echo '村长你的牙好亮啊<br />';

echo '村长你的牙好亮啊<br />';

echo '村长你的牙好亮啊<br />';

test:

echo '村长你的牙好亮啊<br />';

echo '村长你的牙好亮啊<br />';

(break continue)

break 用于结束循环,不管break后边有多少语句,碰到break立即结束循环

continue: 用于结束本次循环 不管后边有多少语句,都不执行,后进入下一次循环