代码结构
通常将代码的执行结构分成三种:顺序结构,分支结构,循环结构
顺序结构
代码从上往下一次执行。
分支结构
给定条件,不同的条件下产生的结果应该不一样。
分支结构:通过条件的判断,选择性的执行相应的代码。
分支结构有两种:if分支,switch分支
if分支
最简语法
if(条件表达式){
//条件表达式返回的结果是true
//要执行的代码块
}
标准分支语法
if(条件表达式){
//true所要执行的代码块
}else{
//false所要执行的代码块
}
复杂(复合)语法
if(条件表达式1){
//满足条件1的代码块
}elseif(条件表达式2){
//满足条件2的代码块
}…
switch分支
switch分支是对于固定的条件进行判断,选择性的执行对应的条件下代码块
语法
switch(条件表达式){
case 条件1:
//代码块
break; //跳出当前分支执行,switch终止执行
case 条件2:
….
default:
//全部都不满足的情况下,执行
}
if和switch的区别
1. if条件表达式通常是比较运算或者逻辑运算,而switch的条件表达式通常是固定值
2. if分支是只能唯一满足一个条件,但是switch可以执行多个条件(没有break)
3. if判断条件是顺序判断,而switch是循环判断
三目运算与if结构可以互换。
循环结构
循环结构指的是有一段代码需要在指定的某个范围内重复的执行。(迭代)
php中的循环:for,while,do-while,foreach
foreach是php中专门为数组遍历提供的循环。
for循环
for循环是需要的条件最多的循环,条件都是在循环里面控制。
语法
for(表达式1;表达式2;表达式3){
//循环体:代码块
}
表达式1:对循环条件的初始化,可以有多个表达式,表达式之间用逗号分隔
表达式2:条件判断表达式,判断条件的边界值
表达式3:条件变化表达式,通常是自操作运算
for循环可以没有条件
循环控制
在循环的内部,通过设定某些条件来进行循环的处理:继续执行循环continue和跳出循环break
for循环流程
for(表达式1;表达式2;表达式3){
//循环体4
}
流程:①条件初始化:执行表达式1;②执行条件判断:表达式2;③满足条件:执行循环体:循环体4;④:执行循环条件变更:表达式3;⑤:重复②③④直到③步中,不满足条件结束
while循环
只需要判断循环条件,在循环内部控制循环条件变更的循环。
语法
while(条件表达式){
//循环体
//循环控制
//循环变量的变更
}
do-while循环
与while循环一致的,区别在于do-while循环一定会执行一次循环体,而while不一定。
语法
do{
//循环体
//循环控制
//循环条件变更
}while(条件表达式);
九九乘法表
作业:
1. 做一个菱形
2. 做一个空心菱形
4层菱形
*
* *
* *
* *
* *
* *
* *
* *
*
模板标签
php代码需要在html中嵌入使用,php一个结构中间会需要去包含部分html,如果使用大括号会导致代码变得难看。php在嵌入的时候,可以使用模板标签来代替原来对应的大括号
左大括号:使用冒号:
右大括号:使用end + 对应的标记 + ;
for(){
}
模板标记
for():
endfor;
php嵌套html的执行流程
php支持的模板标记
if:if: endif;
for: for(): endfor;
while:while(): endwhile;
foreach:foreach(): endforeach;
函数
1. 什么是函数?
一个可以被重复调用的代码块(复用)
2. 为什么要有函数?
要在很多地方重复利用某一个代码块。
核心思想:模块化编程
函数分类
函数分为两类:系统函数和自定义函数
系统函数:系统已经定以后,用户只需要调用的函数
自定义函数:用户在使用前必须先定义(被调用的函数必须事先在内存中存在(代码段))
定义函数
函数的构成部分:函数名,参数列表,函数体,返回值
语法
function 函数名(参数列表){
//函数体
//返回值:return 要返回的数据
}
参数列表:可以没有,也可以是多个
返回值:可以没有
调用函数
函数的调用都是直接使用函数名(参数列表)
函数定义与调用原理
函数命名
通常的函数命名方式有两种:驼峰法和下划线法
驼峰法:首字母小写,后面跟的单词首字母大写
形参&实参
形参:函数定义的时候使用的参数叫做形参,在定义的时候没有值,可以在内部使用。
实参:在函数被调用的时候传入的实际参数叫实参
函数定义时如果指定了形参,那么调用时必须指定对应的实参
内存分析图
形参与实参的关系
1. 如果定义函数的时候指定了形参,那么调用时必须传入实际的参数
2. 实参的个数必须不能少于形参的个数,多于的部分会被忽略掉
3. 实参的位置必须与形参对应
4. 形参的名字与实参的名字没有半点关系
作业:打印空心菱形与函数结合,使用函数的参数来控制层数