PHP循环与分支知识点梳理
作者:不要叫我阿哥 发布时间:2023-05-29 13:09:21
ps:大多与c等编程语言极为相似
一、if分支
if:给定一个条件,同时为该条件设置多种(一般两种)情况,然后通过条件判断来实现具体的执行段
复合if实例:
<?php
$day=satday;
if($day=='sunday'){
echo'go out';
}elseif($day=='satday'){
echo'kaibai';
}else{
echo'die';
}
?>
嵌套if实例:
<?php
$day=sunday;
if($day=='sunday'){
echo'go out';
}else{
if($day=='satday'){
echo'at home';
}else{
echo'die';
}
}
?>
注意:如果条件特别多才会采用复合if形式
如果条件比较单一(同一类条件),会采用elseif复合方式
如果判断条件不一致,建议使用嵌套语法(不宜有太多层)
if分支适用于所有的条件判断
二、switch分支
switch分支适用于通过同一条件,通常有多个值,但是每一个值都会有对应不同的代码要执行
switch基本语法:
switch(条件表达式){
case 值1:
要执行的代码段;
break; //如符号条件,则起中断执行的作用
case 值2:
要执行的代码段;
break;
default:
//匹配失败的代码
Break;
}
switch实例:
<?php
$day=day2;
switch($day){
case day1:
echo'Sunday';
break;
case day2:
echo'Monday';
break;
case day3:
echo'Tuesday';
break;
case day4;
echo'Wednesday';
break;
case day5;
echo'Thursday';
break;
case day6;
echo'Friday';
break;
case day7;
echo'Saturday';
break;
default:
echo'error';
break;
}
?>
三、循环结构
1.for循环基本语法
for(条件表达式1;条件表达式2;条件表达式3){
//条件表达式1:定义初始化条件,可以有多种赋值语句存在,使用都还分隔
//条件表达式2:边界判定,限定循环执行的次数
//条件表达式3:用来执行条件变化
//循环体
}
for实例:
<?php
for($i=1;$i<=10;$i++){
echo $i,'<br/>';
}
//运行结束后$i==11
echo $i;
?>
要注意避免出现死循环!
2.while循环与do while循环
while循坏基本语法:
条件初始化
while(条件表达式){
//条件表达式就是判断边界条件
循环体 //循环条件的变化
}
while循环实例
<?php
$i=1;
while($i<=10){
echo $i,'<br/>';
$i++;
}
?>
or与while的选择:
1.基于固定已知条件(数值而且是有规律的变化),使用for循环
2.while可以做更灵活的条件判定
do while循环:与while相似,但与while不同的是while首先进行条件判定然后执行循环体,有可能出现第一次条件不满足(循环题一次都不执行),do while就是先执行循环体再判断条件(至少会执行一次循环体)
do while基本语法:
do{
//循环体
}while(条件表达式);
do while实例(输入1-10之间的偶数 ):
<?php
$i=1;
do{
if($i%2!=1){
echo $i,'<br/>';
}$i++;
}while($i<=10);
?>
四、循环控制
在循环内部对循环本身进行控制
中断控制:重新开始循环,循环体中还有其他内容,也在执行
continue 层级//默认是1
终止控制:循环直接结束
break层级//默认是1
continue实例:(输出一百以内5的倍数)
<?php
$i=1;
while($i<=100){
if ($i%5!=0) {
$i++;
continue;//重新循环,系统重新跳到循环开始处
}
echo $i++,'<br/>';
}
?>
break:直接使循环结束因为循环经常会碰到嵌套循环
如果在循环内部有些条件下,明确可以知道当前循环(或者说外部循环)不需要继续执行了,那么就是可以使用循环控制来实现,其中内部循环也可以控制到外部,就是通过使用层级参数。
比如:
continue2:当前自己循环后面内部不再执行,同时外部循环如果还有循环体也不再执行,重新来过
break2:当前自己循环借宿,同时外部也结束(如果还有外部不受影响,继续执行)
来源:https://blog.csdn.net/m0_73770225/article/details/127858520


猜你喜欢
- 本文介绍基于PowerShell语言,对文件夹中全部文件的名称加以批量替换、修改的方法。在之前的文章基于Python实现自动批量修改文件名称
- 最近在跑程序,然后Pycharm就跳出out of memory 的错误提示,可能是由于读取的数据太多导致的,Pycharm有一个默认内存的
- 1、Node.js的单线程 非阻塞 I/O 事件驱动在 Java、PHP 或者.net 等
- 同时安装vs2005团队开发版和sql 2005企业版(downmoon原作)由于微软在vs2005vsts团队开发版中集成了sql 200
- 数据插入覆盖和时间戳问题1.数据插入问题当我们insert数据时,插入datetime类型,此类型的字段,存储数据格式为: YY
- Python是一种高级编程语言,它在众多编程语言中,拥有极高的人气和使用率。Python中的多线程和线程池是其强大的功能之一,可以让我们更加
- 最近在处理文本文件时,遇到编码格式和换行符的问题。基本上都是GBK 和 UTF-8 编码的文本文件,但是python3 中默认的都是按照 u
- 本文实例讲述了Python实现队列的方法。分享给大家供大家参考。具体实现方法如下:#!/usr/bin/env python queue =
- 概况Vue3 里要实现数据的响应式监听一共有两种方式既:ref 和 reactive他们既有区别又有联系。ref()ref数据响应式监听。r
- 代码及注释如下#Auther Bob#--*--conding:utf-8 --*--#生产者消费者模型,这里的例子是这样的,有一个厨师在做
- python3中str默认为Unicode的编码格式Unicode是一32位编码格式,不适合用来传输和存储,所以必须转换成utf-8,gbk
- 前言前言:想写这个代码的原因是因为实习的时候需要根据表格名创建对应的文件夹,如果只是很少个数文件夹的话,ctrl+shift+n还可以接受吧
- 新建一个项目之后,我们来看一下项目的目录结构几个主要文件的内容index.html文件(入口文件,系统进入之后先进入index.html)&
- 本文实例讲述了python多线程高级锁condition简单用法。分享给大家供大家参考,具体如下:多线程编程中如果使用Condition对象
- 如下表:先使用str_to_date函数,将其varchar类型转为日期类型,然后从小到大排序语法:select str_to_date(c
- 背景使用python操作一批同样分辨率的图片,合并为tiff格式的文件。由于opencv主要用于读取单帧的tiff文件,对多帧的文件支持并不
- 我们已经知道Application和Session对象的OnStart、OnEnd事件的脚本,都必须是在 Global.asa&n
- 一段简单的pygame代码,只在pygame界面背景绘制了一个背景图片# -*- coding=utf-8 -*-import sysimp
- 阅读本文需要有其他语言的编程经验。在 JavaScript 中数组是对象(而非线性分配的内存)。通过数组 literal 来创建数组:var
- 无聊的人在无聊的时间做无聊的事打发自己,结果在无聊的事情中发现了IE对内联文字解释的一些疑惑。以下问题在FF2中没发现,而我也只