无涯教程-PHP - 循环语句
PHP中的循环用于执行相同的代码块指定的次数。 PHP支持以下四种循环类型。
for - 在代码块中循环指定的次数。
while - 如果且只要指定条件为真,就会循环遍历代码块。
do ... while - 循环执行一次代码块,然后在满足特殊条件的情况下重复循环。
foreach - 遍历数组中每个元素的代码块。
无涯教程将讨论用于控制循环执行的 continue 和 break 关键字。
for 循环语句
当您知道要执行一次语句或语句块的次数时,将使用for语句。
for (initialization; condition; increment){code to be executed; }
初始化程序用于设置循环迭代次数计数器的起始值。为此可以在此声明一个变量,传统上将其命名为$i。
以下示例进行五次迭代,并在每次循环时更改两个变量的赋值-
<html><body><?php$a=0;$b=0;for( $i=0; $i<5; $i++ ) {$a += 10;$b += 5;}echo ("At the end of the loop a=$a and b=$b" );?></body> </html>
这将产生以下输出-
At the end of the loop a=50 and b=25
while 循环语句
只要且只要测试表达式为true,while语句就会执行一个代码块。
如果测试表达式为true,则将执行代码块。在代码执行之后,将再次判断测试表达式,并且循环将继续进行,直到发现测试表达式为假。
while (condition) {code to be executed; }
此示例在循环的每次迭代中递减一个变量值,并且当判断为假且循环结束时,计数器递增直至达到10。
<html><body><?php$i=0;$num=50;while( $i < 10) {$num--;$i++;}echo ("Loop stopped at i=$i and num=$num" );?></body> </html>
这将产生以下输出-
Loop stopped at i=10 and num=40
do ... while循环语句
do ... while语句将至少执行一次代码块-只要条件为真,它将重复循环。
do {code to be executed; } while (condition);
以下示例将至少增加i的值一次,并且将继续增加变量i的值,只要其值小于10-
<html><body><?php$i=0;$num=0;do {$i++;}while( $i < 10 );echo ("Loop stopped at i=$i" );?></body> </html>
这将产生以下输出-
Loop stopped at i=10
foreach 循环语句
foreach 语句用于遍历数组。对于每遍,当前数组元素的值将分配给$value,并且数组指针将移动一个,并且在下一遍中将处理下一个元素。
foreach (array as value) {code to be executed; }
试用以下示例列出数组的值。
<html><body><?php$array=array( 1, 2, 3, 4, 5);foreach( $array as $value ) {echo "Value is $value <br />";}?></body> </html>
这将产生以下输出-
Value is 1 Value is 2 Value is 3 Value is 4 Value is 5
Break 语句
PHP break 关键字用于过早地终止循环的执行。
break 语句位于语句块内部,它给了您完全的控制权,只要您想退出循环,就可以退出。退出循环后,将立即执行循环语句。
在以下示例中,当计数器值达到3并终止循环时,条件测试变为true。
<html><body><?php$i=0;while( $i < 10) {$i++;if( $i == 3 )break;}echo ("Loop stopped at i=$i" );?></body> </html>
这将产生以下输出-
Loop stopped at i=3
Continue 语句
PHP continue 关键字用于暂停循环的当前迭代,但不会终止循环。
就像 break 语句一样, continue 语句位于语句块内,该语句块包含循环执行的代码,并先进行条件测试。对于遇到 continue 语句的传递,将跳过其余循环代码,并开始下一个传递。
在下面的示例循环中,打印数组的值,但对于满足条件的情况,它仅跳过代码并打印下一个值。
<html><body><?php$array=array( 1, 2, 3, 4, 5);foreach( $array as $value ) {if( $value == 3 )continue;echo "Value is $value <br />";}?></body> </html>
这将产生以下输出-
Value is 1 Value is 2 Value is 4 Value is 5
PHP - 循环语句 - 无涯教程网无涯教程网提供PHP中的循环用于执行相同的代码块指定的次数。 PHP支持以下四种循环类型。 for ...
https://www.learnfk.com/php/php-loop-types.html
相关文章:
无涯教程-PHP - 循环语句
PHP中的循环用于执行相同的代码块指定的次数。 PHP支持以下四种循环类型。 for - 在代码块中循环指定的次数。 while - 如果且只要指定条件为真,就会循环遍历代码块。 do ... while - 循环执行一次代码块…...
思维进化算法(MEA)优化BP神经网络
随着计算机科学的发展,人们借助适者生存这一进化规则,将计算机科学和生物进化结合起来,逐渐发展形成一类启发式随机搜索算法,这类算法被称为进化算法(Evolutionary Com-putation, EC)。最著名的进化算法有:遗传算法、进化策略、进化规划。与传统算法相比,进化算法的特点是群体搜…...
Kotlin 中的 设计模式
单例模式 饿汉模式 饿汉模式在类初始化的时候就创建了对象,所以不存在线程安全问题。 局限性: 1、如果构造方法中有耗时操作的话,会导致这个类的加载比较慢; 2、饿汉模式一开始就创建实例,但是并没有调用…...
Vulnhub: ICMP: 1靶机
kali:192.168.111.111 靶机:192.168.111.208 信息收集 端口扫描 nmap -A -sC -v -sV -T5 -p- --scripthttp-enum 192.168.111.208 80端口的cms为Monitorr 1.7.6m 搜索发现该版本的cms存在远程代码执行 searchsploit monitorr 漏洞利用 nc本地监听&…...
我的创作纪念日(C++修仙练气期总结)
分享自己最喜欢的一首歌:空想フォレスト—伊東歌詞太郎 机缘 现在想想自己在CSDN创作的原因,一开始其实就是想着拿着博客当做自己的学习笔记,笔记嘛,随便写写,自己看得懂就ok了的态度凸(艹皿艹 )。也是用来作为自己学习…...
css的常见伪元素使用
1.first-line 元素首行设置特殊样式。 效果演示: <div class"top"><p>可以使用 "first-line" 伪元素向文本的首行设置特殊样式。<br> 换行内容 </p></div> .top p::first-line {color: red;} 2.first-lette…...
91. 解码方法
递归法:超时了 从字符串的后面向前计算,每一次递归都缩小子集 public class Solution {public int NumDecodings(string s) {return RecursiveAdd(s, s.Length - 1);}public int RecursiveAdd(string s, int index) {// 已经到最后一个元素if(index <…...
docker搭建opengrok环境2
引言: 虚拟机关闭后重新开启,理论上是需要重新启动一下docker的,以重新启动其中的服务。 命令基础: docker images:查看docker中现有的镜像 docker container ls -all:查看docker中目前在运行的containe…...
【校招VIP】java语言考点之ConcurrentHashMap1.7和1.8
考点介绍: ConcurrentHashMap是JAVA校招面试的热门考点,主要集中在1.7和1.8的底层结构和相关的性能提高。 理解这个考点要从map本身的并发问题出发,再到hashTable的低性能并发安全,引申到ConcurrentHashMap的分块处理。同时要理解…...
php如何实现5x+2x+1x=100
要实现5x 2x 1x 100的计算,可以使用PHP来解方程。以下是一个简单的PHP代码示例: php <?php $x 1; // 初始化x的值while (5*$x 2*$x 1*$x ! 100) { // 循环直到方程成立$x; // 每次循环增加x的值 }echo "x " . $x; // 输出x的值 ?…...
机器人项目:从 ROS2 切换到 ROS1 的原因
一、说明 机器人操作系统ROS是使用最广泛的机器人中间件平台。它在机器人社区中使用了10多年,无论是在业余爱好者领域还是在工业领域。ROS可用于各种微控制器和计算机,从Arduino到Raspberry Pi再到Linux工作站,它为电机控制器,视觉…...
Vault主题 - UiCore多用途Elementor WordPress主题
你可以使用Vault主题 – UiCore多用途Elementor WordPress主题构建什么? Vault主题拥有专业、像素级完美且干净的现代布局,几乎适合您需要的任何网站: 小型企业网站企业网站着陆页面权威博客销售和营销页面网上商店 自由职业者的最佳选择 …...
G0第26章:微服务概述与gRPCprotocol buffers
Go微服务与云原生 1、微服务架构介绍 单体架构(电商) SOA架构(电商) 微服务架构(电商) 优势 挑战 拆分 发展史 第一代:基于RPC的传统服务架构 第二代:Service Mesh(istio) 微服务架构分层 核心组件 Summar…...
三款远程控制软件对比,5大挑选指标:安全、稳定、易用、兼容、功能
陈老老老板🤴 🧙♂️本文专栏:生活(主要讲一下自己生活相关的内容)生活就像海洋,只有意志坚强的人,才能到达彼岸。 🧙♂️本文简述:三款远程控制软件对比,5大挑选指标࿱…...
Java中static的应用之单例模式
单例模式是一种创建对象的设计模式,它保证一个类只有一个实例,并提供一个全局访问点。由于单例模式只允许存在一个实例,因此它可以节省系统资源并提高程序的性能。在许多情况下,单例模式在应用程序中都是非常有用的,例…...
TypeError: Cannot read properties of undefined (reading ‘container‘)
问题环境: element项目 el-table的错误 项目是由 webpack项目迁移为 vite项目 问题描述: errorLog.js?t1692581753160:17 TypeError: Cannot read properties of undefined (reading container) at unbind (infinite-scroll.js:259:31) …...
Vue--BM记事本
效果如下: 用到了如下的技术: 1.列表渲染:v-for key的设置 2.删除功能:v-on调用参数 fliter过滤 覆盖修改原数组 3.添加功能:v-model绑定,unshift修改原数组添加 html文件如下: <!DOCTYPE …...
openpnp - 板子上最小物料封装尺寸的选择
文章目录 openpnp - 板子上最小物料封装尺寸的选择概述END openpnp - 板子上最小物料封装尺寸的选择 概述 现在设备调试完了, 用散料飞达载入物料试了一下. 0402以上贴的贴别准, 贴片流程也稳, 基本不需要手工干预. 0201可以贴, 但是由于底部相机元件视觉识别成功率不是很高…...
什么是非功能性需求,它们如何影响产品开发?
我们在选购新车时,会预设一些选购的标准,比如GPS导航必须能够保存目的地,或者必须要买黑色的车。我们可能下意识以为这些是功能性需求,但实际上这些特性都是与用户体验相关的非功能性需求。 一、什么是非功能性需求(NFR)? 非功…...
Oracle jdk8 exe->zip
一、背景 目前Oracle网站对应jdk8安装windows仅存在exe安装包,对于某些用户一台机器上对应jdk版本需动态切换,故需使用zip版本jdk,更加方便,本文介绍如何从jdk对应exe提取zip。 二、步骤 下载jdk8对应exe安装包;使用…...
IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...
铭豹扩展坞 USB转网口 突然无法识别解决方法
当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...
JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...
如何在最短时间内提升打ctf(web)的水平?
刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...
MySQL账号权限管理指南:安全创建账户与精细授权技巧
在MySQL数据库管理中,合理创建用户账号并分配精确权限是保障数据安全的核心环节。直接使用root账号进行所有操作不仅危险且难以审计操作行为。今天我们来全面解析MySQL账号创建与权限分配的专业方法。 一、为何需要创建独立账号? 最小权限原则…...
【分享】推荐一些办公小工具
1、PDF 在线转换 https://smallpdf.com/cn/pdf-tools 推荐理由:大部分的转换软件需要收费,要么功能不齐全,而开会员又用不了几次浪费钱,借用别人的又不安全。 这个网站它不需要登录或下载安装。而且提供的免费功能就能满足日常…...
在 Spring Boot 项目里,MYSQL中json类型字段使用
前言: 因为程序特殊需求导致,需要mysql数据库存储json类型数据,因此记录一下使用流程 1.java实体中新增字段 private List<User> users 2.增加mybatis-plus注解 TableField(typeHandler FastjsonTypeHandler.class) private Lis…...
