PHP 零基础入门笔记(6):PHP 流程控制
PHP 流程控制
代码执行的方向
控制分类
- 顺序结构 代码从上往下,顺序执行
- 分支结构 根据条件执行某一段代码
- 循环结构 指定代码块重复执行
顺序结构
最基本的结构,所有代码默认都是从上往下依次执行
分支结构
1、if 分支
基本语法
// 1、最简if
if(条件表达式){// 满足条件所要执行的代码
}// 2、基础if
if(条件){// 满足
}
else{// 不满足
}// 3、复杂if
if(条件1){// 满足条件1
}
else if(条件2){// 满足条件2
}
else{// 不满足
}
注意: 嵌套层数不宜过多
示例
<?php$a = 1;if ($a == 1) {echo '星期一';
} else if ($a == 2) {echo '星期二';
} else {echo '未知';
}// 星期一
2、switch 分支
使用场景:同一个条件有多个值
基本语法
switch(条件表达式){case 值1: // 判断表达式的结果与值相等要执行的代码段1;break;case 值2:要执行的代码段2;break;...default:默认自行的代码;
}
switch 匹配成功后,会执行之后的代码,需要使用 break 跳出
<?php$a = 1;switch ($a) {case 1:echo '星期一';break;case 2:echo '星期二';break;default:echo '未知';
}// 星期一
if 和 switch 的选择
- if 能做所有的的分支结构
- switch 处理的条件多,用于固定的条件
循环结构
- for 循环
- while 循环
- do-while 循环
- foreach 循环,专门针对数组
1、for 循环
基本语法
for(初始化条件; 边界表达式; 条件变化){// 循环体
}
示例
<?php// 循环输出1-10
for ($i = 1; $i <= 10; $i++) {echo $i . ' ';
}// 1 2 3 4 5 6 7 8 9 10// 初始化语句中,定义多个变量
for ($i = 1, $end = 10; $i <= $end; $i++) {echo $i . ' ';
}
For循环特殊使用:死循环,避免出现
for(;;){// 无限循环
}
2、while循环
基本语法
条件初始化;while(条件表达式){// 循环体// 循环条件的变化
}
示例
<?php$i = 1;while( $i <= 10 ){echo $i . ' ';$i++;
}// 1 2 3 4 5 6 7 8 9 10
For和while的选择
- For循环:基于已知条件,数值有规律变化
- while循环:灵活条件判定
3、do-while
基本语法
do{// 循环体
} while(判断条件);
示例
<?php$i = 1;do{echo $i . ' ';$i++;
}
while( $i <= 10 );// 1 2 3 4 5 6 7 8 9 10
循环控制
在循环体内部对循环本身进行控制
- 中断控制 continue:重新开始循环,循环体重还有其他内容,也执行
- 终止控制 break:循环直接结束
<?phpfor ($i=0; $i < 10; $i++) { if($i % 2 == 0){continue;}if($i == 8){break;}echo $i . ' ';
}// 1 3 5 7 9
流程控制替代语法
分支和循环结构的替代语法
HTML和PHP进行混搭
<table><!-- 输出 99乘法表 --><?php for ($i = 1; $i < 10; $i++) { ?><tr><?php for ($j = 1; $j <= $i; $j++) { ?><td> <?php echo $i . ' * ' . $j . ' = ' . $i * $j; ?></td><?php } ?></tr><?php } ?>
</table>
1 * 1 = 1
2 * 1 = 2 2 * 2 = 4
3 * 1 = 3 3 * 2 = 6 3 * 3 = 9
4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16
5 * 1 = 5 5 * 2 = 10 5 * 3 = 15 5 * 4 = 20 5 * 5 = 25
6 * 1 = 6 6 * 2 = 12 6 * 3 = 18 6 * 4 = 24 6 * 5 = 30 6 * 6 = 36
7 * 1 = 7 7 * 2 = 14 7 * 3 = 21 7 * 4 = 28 7 * 5 = 35 7 * 6 = 42 7 * 7 = 49
8 * 1 = 8 8 * 2 = 16 8 * 3 = 24 8 * 4 = 32 8 * 5 = 40 8 * 6 = 48 8 * 7 = 56 8 * 8 = 64
9 * 1 = 9 9 * 2 = 18 9 * 3 = 27 9 * 4 = 36 9 * 5 = 45 9 * 6 = 54 9 * 7 = 63 9 * 8 = 72 9 * 9 = 81
另一种书写for的方式
<table><!-- 输出 99乘法表 --><?php for ($i = 1; $i < 10; $i++) : ?><tr><?php for ($j = 1; $j <= $i; $j++) : ?><td> <?php echo $i . ' * ' . $j . ' = ' . $i * $j; ?></td><?php endfor ?></tr><?php endfor ?>
</table>
PHP在HTML中应该只做数据输出
if() {} => if(): endif;
PHP 零基础入门笔记(6):PHP 流程控制相关推荐
- 11岁过python1级_11岁表弟写的Python零基础入门笔记!
一.Python输入与输出输出:使用print()函数. print()函数的基本语法格式如下:print(输出内容). 输出内容可以是数字和字符串(字符串需要用引号括起来),也可以是包含运算符的表达 ...
- 【Python3零基础入门笔记】05 Python时间处理——time库的使用
time库的使用: time库基本情况 时间获取 时间格式化 程序计时 文本进度条实例 time库基本情况 Time库是python中处理时间的标准库 计算机时间表达 提供获取系统时间并格式化输出功能 ...
- PHP 零基础入门笔记(8):PHP 文件包含include/require
PHP 文件包含include/require 在一个 PHP 脚本中,去将另一个文件包含进来 文件包含的作用 实现代码共享重用,协作共同完成一件事 使用被包含文件中的内容:向上包含(所要) 自己的东 ...
- Unity C#零基础入门笔记(一)Paws3D笔记
计算机语言: 计算机语言按发展分为三种: 机器语言 汇编语言 高级语言 机器语言就是机器码,是能够被计算机直接理解的语言.更通俗地讲就是010101这样的二进制指令.和硬件密切相关,编写苦难. 两个主 ...
- PHP 零基础入门笔记(11):字符串 String
字符串 String 字符串类型 单引号字符串 双引号字符串 nowdoc 字符串 heredoc 字符串 示例 <?php// 1.单引号字符串 $str1 = 'hello world';v ...
- JavaScript零基础入门--笔记动力节点最新老杜(九-完结)全套笔记精髓
JSON 1.什么是JSON,有什么用? JavaScript Object Notation(JavaScript对象标记),简称JSON.( ...
- PHP 零基础入门笔记(3):PHP 变量和常量
PHP 变量和常量 PHP 基本语法 PHP 是一种运行在服务器端的脚本语言,可以嵌入到 HTML 中 1.PHP 代码标记 ASP 标记(asp_tags,已弃用) <% php代码 %> ...
- PHP 零基础入门笔记(7):PHP 常用的系统函数
PHP 常用的系统函数 输出函数 print() 类似 echo 输出,返回 1 print_r() 类似 var_dump(), 不会输出类型,只会输出值 <?phpecho 'hello w ...
- PHP 零基础入门笔记(2):安装PHP
安装PHP demo.php <?phpecho "Hello World"; 解释执行php脚本 $ php demo.php Hello World apache htt ...
最新文章
- Controller类的方法上的RequestMapping一定要写在Controller类里吗?
- 什么是程序员正确的职场心态?
- 2.Cannot find config.m4.
- 【Mac】mac 安装Axure RP 8 点不开 就一直跳-后闪退-报错Expected an Int64 but got a System.UInt64
- additemdecoration重复_安卓中另一个强大的大量数量集控件RecyclerView
- vaspkit使用_VASP 的光学性质计算及 vaspkit 的安装与使用
- 如何使用PowerShell处理SQL Azure数据库
- Xshell 6, 7 已过期的解决方案
- 网页嵌入谷歌翻译js插件
- C#写入注册表打印异常提示无法写入到注册表项
- 120帧手机动态壁纸_星空陨石动态壁纸手机版下载-星空陨石动态壁纸app安卓版下载v1.7最新版...
- MetaAI的融合怪:BlenderBot
- 设计模式六大原则(初步理解)
- 基于PHP的租赁商城系统(包括数据库和后台)
- 实现 flatten 扁平化对象和数组
- 英语作文计算机国际会议开幕词,学术会议开幕词英文.doc
- 煤炭行业转型箭在弦上,云+AI推进两化深度融合
- 宏基服务器型号,宏基云服务器排名
- 超级星饭团专访陆毅:化身“霸总”上演“沙漏”式爱情
- mysql5.6.1732位_MySQL - 龚哥哥的博客 - gong.gg