Foreach 循环|学习笔记

简介: 快速学习 Foreach 循环

开发者学堂课程【PHP 基础入门课程(下)Foreach 循环】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/710/detail/12618


Foreach 循环


目标:掌握 loreach 的语法结构,了解 foreach 原理,灵活使用 foreach 进行数组遍历

1.概念

foreach 循环:PHP 中专门进行数组遍历的循环

(1)foreach 循环专门遍历数组

(2)foreach 循环可以解析数组的下标和值

(3)foreach 语法

foreach(数组变量 as[下标变量=>]值变量){

通过下标变量读取数组中每个元素的下标(可以没有)

通过值变量读取数组中每个元素的值}

[]代表着可有可无,可以只取他的值,也可以只要他的下标

2.步骤

(1)确定要遍历的数组

(2)确定是否需要用到下标

(3)确定下标变量和值变量(名字自取)

(4)确定循环体

3.示例

输出个人的全部信息

#定义数组

$info = array('name'=> '鸣人",'ski11’=>'螺旋丸');

#1、确定要遍历的数组$info

#2、确定是否需要下标:需要

#3、确定相关变量:下标使用 skey 保存,值使用$value 保存 foreach($info as $key => $value){

#4、确定循环体:输出信息

echo $key ,' : " . $value . '<br/>';

}

举例操作

<?php

#foreach 循环

$info = [

'name' "犬夜叉",

'skill'=> '铁碎牙',

'age '100'

];

foreach($info as $k => $v){

#$k 代表每个元素的下标,$v 代表当前元素的值

echo $k 。":'。 $v .'<br/>';

}

运行结果:

image.png

5.流程图解析

以上述案例为例:数组有一个元素指针,元素都会通过数组指针进行访问,默认指向第一个元素

graph LR

A(循环开始)-->B[重置数组指针<br/>$info

B-->c{当前指针所指元素<br/>是否有效}

C-->|无效|E((循环结束))->|有效/D[取出元素<br/>下标赋值给$key<br>值赋值给Svalue<br/>数组指计下移]

D-->F[进入循环体]

E-->C

image.png

重置指针指向第一个,之后看看当前元素指针所指的元素是否有效,有效取出元素,把下标的值取出来赋值给提供的变量,数组指针下降,再进入到循环体,同样在循环一次,取值赋值指针下移,直到指针无效循环停止。

注意:在进行 foreach 时,通常不会进行变例,因为价值不大,也可以有但是极少。

6.小结

(1)foreach 是专门用来进行数组遍历的

(2)foreach 是根据数组指针所在的位置挨个取出元素的,有效会取无效不取

重置指针:执行一次

判定指针有效性

指针有效:取出数组元素

下标赋值给下标变量(如果提供了下标变量)

值赋值给值变量

指针下移

指针无效:循环结束

进入循环体

(3)foreach 可以不获取数组元素的下标,看自己需求

(4)foreach 极少对一维数组进行遍历,通常时二维数组(多维)

相关文章
|
存储 C语言
C语言实现简易学生信息管理系统
C语言实现简易学生信息管理系统
446 4
|
Java Spring
Spring Boot3整合knife4j(swagger3)
Spring Boot3整合knife4j(swagger3)
3708 1
|
5月前
|
SQL XML Java
MyBatis Mapper中使用limit参数的查询问题
总结而言,MyBatis中使用 `limit`参数的查询可以高度定制并且灵活,基于方法签名和XML映射文件的组合来达成多样化的查询需求。通过参数化查询和动态SQL,MyBatis可以有效地处理各种复杂情境下的数据库操作,并且将SQL语句的维护与业务代码的编写相分离,提升代码的可维护性和可阅读性。
515 13
|
11月前
|
安全 Java 数据安全/隐私保护
springSecurity学习之springSecurity过滤web请求
通过配置 Spring Security 的过滤器链,开发者可以灵活地管理 Web 请求的安全性。理解核心过滤器的作用以及如何配置和组合这些过滤器,可以帮助开发者实现复杂的安全需求。通过具体的示例代码,可以清晰地了解 Spring Security 的配置方法和实践。
533 23
|
11月前
|
编解码 文字识别 自然语言处理
如何使用OCR技术批量识别图片中的文字并重命名文件,OCR 技术批量识别图片中的文字可能出现的错误
### 简介 【批量识别图片内容重命名】工具可批量识别图片中的文字并重命名文件,方便高效处理大量图片。然而,OCR 技术面临字符识别错误(如形近字混淆、生僻字识别不佳)、格式错误(段落错乱、换行问题)和语义理解错误等挑战。为提高准确性,建议提升图片质量、选择合适的 OCR 软件及参数,并结合自动校对与人工审核,确保最终文本的正确性和完整性。
1640 12
如何使用OCR技术批量识别图片中的文字并重命名文件,OCR 技术批量识别图片中的文字可能出现的错误
|
9月前
|
JSON 算法 API
1688拍立淘图片搜索接口全攻略
1688拍立淘图片搜索接口由阿里巴巴提供,支持通过上传图片在1688平台搜索相似商品。该接口基于图像识别技术,具备高精度匹配、丰富商品信息返回、支持多图片格式及可定制化搜索等特点,适用于电商选品、商品溯源和智能购物等场景。开发者需注册获取app_key与app_secret,并通过Python示例代码调用接口,实现图片搜索功能。
505 23
|
机器学习/深度学习 人工智能 自然语言处理
|
前端开发 JavaScript API
React Echarts 使用教程 - 如何在 React 中加入图表(内附数据看板实战搭建案例)
Ehcarts 作为数据展示的组件,应用场景丰富,所以在 React 里引入 Echarts 图表是每个前端必会技能。而 Echarts配置项多且复杂,每个配置项都会细分很多个配置小项,并且还对外暴露了一套 API,包括图表实例,事件监听等,还是有一定的上手难度。本文手把手教大家如何在 React 里使用 Echarts,并结合实际使用场景,分享我是如何处理图表自适应等具体问题。 最后来一个实战教学,教大家如何结合 ant-design React UI 框架,开发企业级的「数字币走势数据看板」,帮助大家加深对 Echarts 的理解。
1218 0
|
机器学习/深度学习 自然语言处理
【机器学习】如何进行中文命名实体识别?(面试回答)
中文命名实体识别的基本概念、分类、识别思想、实体标注方法以及常见的识别方法,包括基于规则、基于统计和基于深度学习的方法。
406 1
【机器学习】如何进行中文命名实体识别?(面试回答)