当前位置: 首页 > news >正文

PHP关联数组[区别,组成,取值,遍历,函数]

关联数组

相较于数值数组,关联数组的索引可以为字符串和数字,关联数组元素也可称为键值对,索引为键,值为值。

源码

<?php    echo "<hr>"; //水平线标签//关联数组$arr3 = array(); //创建空的数组//关联数组添加元素//$arr3["元素的键"] = "元素的值"$arr3["name"] = "zhangsan";$arr3["age"] = 18 ;$arr3[2] = 'num';//也可以对已有元素进行修改$arr3["name"] = "wangwu";//通过数组内元素的键,输出对应元素的值的值echo $arr3["name"] . "<br>";//输出数组类型及具体元素var_dump($arr3);/* array(2) { ["name"]=> string(6) "wangwu" ["age"]=> int(18) [2]=> string(3) "num" }该变量是数组类型,有两个元素组成键名为name的元素,值为字符串类型,由六个字符组成 wangwu键名为age的元素,值为整数类型,具体为18键名为2的元素,值为字符串类型,由3个字符组成 num*///通过foreach遍历数组元素的 键值对foreach($arr3 as $key => $value ){echo "<br>" . '键为' . $key . '值为' . $value;}/*foreach循环遍历中$arr3为指定数组名 as关键字将数组中每个元素分配给两个变量其中$key为数组的键,$value为数组的值。也可自定义变量名如$k => $v{花括号内为循环迭代过程中执行的代码块}键为name值为wangwu键为age值为18键为2值为num*///调用函数输出数组中指定索引的值function getappoint($arr,$oint){//设置虚参$arr:数组 $oint:指定键$n=0; //初始化计数器,记录迭代次数foreach($arr as $k => $v){if($k == $oint){// == 号判断字符串内容是否相等echo '<br>' . '键名' . $k . "对应的值为" . $v ;// 输出键名对应的值break; //判断成功并执行完成后,结束循环,避免不必要的运算}elseif($oint == $n){echo "<br>" . $n . '为' . $v ;break;}$n++; //计时器自增}}//调用函数getappoint($arr3,'name');//键名name对应的值为wangwugetappoint($arr3,1);//数组中元素位数为1的值为18?>

关联数组的创建

$arr1 = []

$arr1 = array

关联数组的赋值

$arr1['键名'] = '值'

$arr1['name'] = 'zhangsan'

$arr1 = array("键名" = '值',"键名"='值')

$arr1 = array ('name' = "zhangsan" , 'age' = 18 , 2 = 'num')

元素的输出

通过数组内元素的键,输出对应元素的值的值
echo $arr3["name"] . "<br>";

 

输出数组类型及具体元素

var_dump($arr3); 

 

array(2) { ["name"]=> string(6) "wangwu" ["age"]=> int(18) [2]=> string(3) "num" }

该变量是数组类型,有两个元素组成

键名为name的元素,值为字符串类型,由六个字符组成 wangwu

键名为age的元素,值为整数类型,具体为18

键名为2的元素,值为字符串类型,由3个字符组成 num
 

循环遍历数组元素并取值

foreach($arr3 as $key => $value ){
        echo "<br>" . '键为' . $key . '值为' . $value;
    }       

foreach循环遍历 数组$arr3 指定数组名         

as关键字将数组中每个元素分配给两个变量        

其中$key为数组的键,$value为数组的值。也可自定义变量名如$k => $v        

{花括号内为循环迭代过程中执行的代码块}        

键为name值为wangwu       

键为age值为18        

键为2值为num
 

调用函数输出数组中指定索引或位数的值

代码块

function getappoint($arr,$oint){//设置虚参$arr:数组 $oint:指定键$n=0; //初始化计数器,记录迭代次数foreach($arr as $k => $v){if($k == $oint){// == 号判断字符串内容是否相等echo '<br>' . '键名' . $k . "对应的值为" . $v ;// 输出键名对应的值break; //判断成功并执行完成后,结束循环,避免不必要的运算}elseif($oint == $n){echo "<br>" . $n . '为' . $v ;break;}$n++; //计时器自增}}//调用函数getappoint($arr3,'name');//键名name对应的值为wangwugetappoint($arr3,1);//数组中元素位数为1的值为18

创建函数getappoint传入虚参$arr $oint

数值计时器$n初始值为0,用于循环外记录循环迭代次数

foreach函数循环遍历数组$arr,分配元素键名为$k,值为$v 

if判断传入实参与循环内键名是否相等。相等则输出并结束循环。不相等则进入下一个判断。

elseif判断输入数值与循环正在迭代的次数是否相等,相等输出数组内对应位数的值,并结束循环。

不相等则结束判断,执行计时器自增,并进入下一次迭代,直到循环结束为止。
 

调用函数并传入实参 

 

相关文章:

PHP关联数组[区别,组成,取值,遍历,函数]

关联数组 相较于数值数组&#xff0c;关联数组的索引可以为字符串和数字&#xff0c;关联数组元素也可称为键值对&#xff0c;索引为键&#xff0c;值为值。 源码 <?php echo "<hr>"; //水平线标签//关联数组$arr3 array(); //创建空的数组//关联数…...

JavaWeb--13Mybatis(2)

Mybatis&#xff08;2&#xff09; 1 Mybatis基础操作1.1 需求和准备工作1.2 删除员工日志输入参数占位符 1.3 新增员工1.4 修改员工信息1.5 查询员工1.5.1 根据ID查询数据封装 1.5.3 条件查询 2 XML配置文件规范3 MyBatis动态SQL3.1 什么是动态SQL3.2 动态SQL-if更新员工 3.3 …...

如何远程控制另一部手机:远程控制使用方法

在现今高科技的社会中&#xff0c;远程控制手机的需求在某些情境下变得越来越重要。不论是为了协助远在他乡的家人解决问题&#xff0c;还是为了确保孩子的在线安全&#xff0c;了解如何实现这一功能都是有益的。本文将为您简要介绍几种远程控制手机的方法及其使用要点。 KKVi…...

x64dbg中类似于*.exe+地址偏移

在CE和xdb中&#xff0c;形如*.exe数字偏移形式的地址被称为模块地址&#xff0c;CE附加到进程后点击查看内存&#xff0c;显示如下图 这种地址学名叫做模块地址&#xff0c;在x64dbg中显示如下图&#xff1a; CE中可以关闭&#xff0c;从而显示绝对的虚拟地址&#xff0c;如下…...

ICode国际青少年编程竞赛- Python-1级训练场-基础训练1

ICode国际青少年编程竞赛- Python-1级训练场-基础训练1 1、 Dev.step(4)2、 Dev.step(-4) Dev.step(8)3、 Dev.turnLeft() Dev.step(4)4、 Dev.step(3) Dev.turnLeft() Dev.step(-1) Dev.step(4)5、 Dev.step(-1) Dev.step(3) Dev.step(-2) Dev.turnLeft() Dev.step(…...

Baidu Comate智能编码助手

Baidu Comate智能编码助手 &#x1f388;1.Baidu Comate的简介&#x1f388;2.安装Baidu Comate&#x1f388;3.Baidu Comate实现功能&#x1f388;4.使用注释进行智能代码提示&#x1f388;5.结束语 &#x1f388;1.Baidu Comate的简介 根据官网的介绍&#xff0c;我们了解到B…...

nginx自动部署-跨操作系统

项目里面有一个需求&#xff0c;就是需要用让nginx进程提供给系统管理一个start,stop和getPid方法&#xff0c;这样系统管理可以自动拉起来nginx&#xff0c;达到自动部署的目的。离线部署同样适用 这样一来&#xff0c;我就需要提供windows版本linux不同版本的nginx源码包&am…...

组合模式(结构型)

目录 一、前言 二、透明组合模式 三、安全组合模式 四、总结 一、前言 组合模式(Composite Pattern)是一种结构型设计模式&#xff0c;将对象组合成树形结构以表示“部分-整体”得层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。 组合模式由以下角色组成…...

Pspice for TI学习

Pspice for TI中PSpice Part Search空白解决方法 配置环境变量 Cad_PSpice_TI_Regr_Srvr https://software-dl.ti.com/pspice/S009 重新安装2023版的Pspice Pspice安装链接 打开新安装的软件即可发现PSpice Part Search可以正常使用了 VSIN各参赛的含义 VOFF直流偏置VAMPL…...

LoRA的原理简介

在文章开始前先澄清一个概念&#xff0c;需要区分形近的单词"LoRa"&#xff08;long range&#xff09;&#xff0c;这是一项通信技术。熟悉物联网行业的朋友相对会比较熟悉LoRa这项技术&#xff0c;因为有些设备比如电梯的控制就使用了这个技术进行本地数据和命令的…...

安卓使用Fiddler抓包 2024

简介 最近试了一下安卓使用fiddler 抓包&#xff0c;发现https包基本都会丢失。原因是Anandroid 7版本针对ssl安全性做了加强&#xff0c;不认可用户的证书。我们要做的就是把fiddler导出的证书进过处理后放置到系统证书目录下面&#xff0c;这样才能抓包https请求。 这里使用…...

【前端每日基础】day2 const var const的区别

var: 在早期的 JavaScript 中&#xff0c;var 是声明变量的唯一方式。它有以下特点&#xff1a; var 声明的变量是函数作用域&#xff08;function-scoped&#xff09;&#xff0c;而不是块作用域&#xff08;block-scoped&#xff09;&#xff0c;这意味着它们在整个函数内部都…...

乡村振兴的文化旅游融合:整合乡村文化资源与旅游资源,发展文化旅游产业,提升美丽乡村的文化内涵和旅游吸引力

一、引言 随着城市化进程的加速和人们精神文化需求的日益增长&#xff0c;乡村旅游逐渐成为旅游市场的新热点。乡村振兴战略的提出&#xff0c;为乡村旅游的发展提供了新的契机。在这一背景下&#xff0c;如何整合乡村文化资源与旅游资源&#xff0c;发展文化旅游产业&#xf…...

力扣题目101:对称二叉树

作者介绍&#xff1a;10年大厂数据\经营分析经验&#xff0c;现任大厂数据部门负责人。 会一些的技术&#xff1a;数据分析、算法、SQL、大数据相关、python 欢迎加入社区&#xff1a;码上找工作 作者专栏每日更新&#xff1a; LeetCode解锁1000题: 打怪升级之旅 python数据分析…...

struct和union大小计算规则

Union 一&#xff1a;联合类型的定义 联合也是一种特殊的自定义类型&#xff0c;这种类型定义的变量也包含一系列的成员&#xff0c;特征是这些成员公用同一块空间&#xff08;所以联合也叫共用体&#xff09; 比如&#xff1a;共用了 i 这个较大的空间 二&#xff1a; 联合的…...

数据库课程设计《基于Spring Boot + MyBatis + MySQL 实现Java医院药品管理系统》+源代码

文章目录 源代码下载地址项目介绍项目功能 项目备注源代码下载地址 源代码下载地址 点击这里下载源码 项目介绍 项目功能 库存管理 登记入库的药品。 登记出库的药品。 每日检查库存下限&#xff0c;报警。 每日检查过期的药品&#xff0c;报警并做退回销毁处理。 对有问题…...

【每日力扣】98. 验证二叉搜索树 与 108. 将有序数组转换为二叉搜索树

&#x1f525; 个人主页: 黑洞晓威 &#x1f600;你不必等到非常厉害&#xff0c;才敢开始&#xff0c;你需要开始&#xff0c;才会变的非常厉害 98. 验证二叉搜索树 给你一个二叉树的根节点 root &#xff0c;判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下&a…...

Django3 个人开发笔记

查询函数 select_related 在 Django ORM 中&#xff0c;select_related 是一个查询性能优化工具&#xff0c;用于解决关联对象的查询效率问题。当你有两个通过外键&#xff08;ForeignKey&#xff09;或一对一字段&#xff08;OneToOneField&#xff09;连接的模型时&#xf…...

【全开源】Java U U跑腿同城跑腿小程序源码快递代取帮买帮送源码小程序+H 5+公众号跑腿系统

特色功能&#xff1a; 智能定位与路线规划&#xff1a;UU跑腿小程序能够利用定位技术&#xff0c;为用户提供附近的跑腿服务&#xff0c;并自动规划最佳路线&#xff0c;提高配送效率。订单管理&#xff1a;包括订单查询、订单状态更新、订单评价等功能&#xff0c;全行业覆盖…...

物联网实战--平台篇之(五)账户界面

目录 一、界面框架 二、首页(未登录) 三、验证码登录 四、密码登录 五、帐号注册 六、忘记密码 本项目的交流QQ群:701889554 物联网实战--入门篇https://blog.csdn.net/ypp240124016/category_12609773.html 物联网实战--驱动篇https://blog.csdn.net/ypp240124016/cat…...

PPPOSClient:ESP32上轻量级GSM PPP over Serial客户端实现

1. PPPOSClient 库深度解析&#xff1a;面向 ESP32 的 GSM PPPoS 协议客户端实现1.1 库定位与工程价值PPPOSClient 是一个专为嵌入式物联网终端设计的轻量级 GSM 网络接入中间件&#xff0c;其核心价值在于将底层 PPP over Serial&#xff08;PPPoS&#xff09;协议栈与上层应用…...

WVP-GB28181-Pro:构建统一视频监控平台的技术指南

WVP-GB28181-Pro&#xff1a;构建统一视频监控平台的技术指南 【免费下载链接】wvp-GB28181-pro 项目地址: https://gitcode.com/GitHub_Trending/wv/wvp-GB28181-pro 在安防监控领域&#xff0c;企业和机构常常面临多品牌设备协议不兼容、系统扩展困难、运维成本高昂等…...

关于前端获取DOM节点的兼容IE6的代码封装

返回所有子元素节点的代码封装// 封装一个函数&#xff0c;这个函数可以返回元素的所有子元素节点(兼容到IE6)&#xff0c;类似children的功能function getChildren(node){// 结果数组var children [];// 遍历node这个节点的所有子节点&#xff0c;判断每一个子节点的nodeType…...

AC6966B开发板开发准备-环境搭建:Windows下JL杰理AC696N开发环境配置

引言做蓝牙音频、音箱或IoT产品的开发&#xff0c;最怕的不是写代码&#xff0c;而是环境配半天跑不起来。JL杰理AC696N这颗芯片在耳机、音箱方案里很常见&#xff0c;性价比高&#xff0c;外设也全&#xff0c;但第一次接触杰理方案时&#xff0c;环境配置往往要先踩几个坑。尤…...

Youtu-VL-4B-Instruct-GGUF模型Git版本管理与协作开发教程

Youtu-VL-4B-Instruct-GGUF模型Git版本管理与协作开发教程 如果你和团队正在折腾像Youtu-VL-4B-Instruct-GGUF这样的多模态大模型项目&#xff0c;八成遇到过这些头疼事&#xff1a;模型权重文件动辄几十GB&#xff0c;用Git直接传直接卡死&#xff1b;同事改了一段推理代码&a…...

中山大学LaTeX论文模板配置指南:从环境搭建到高效写作

中山大学LaTeX论文模板配置指南&#xff1a;从环境搭建到高效写作 【免费下载链接】sysu-thesis 中山大学 LaTeX 论文项目模板 项目地址: https://gitcode.com/gh_mirrors/sy/sysu-thesis 一、问题导入&#xff1a;为什么需要专业的LaTeX环境配置&#xff1f; 对于中山…...

3分钟上手!免费足球数据宝库football.json完全指南

3分钟上手&#xff01;免费足球数据宝库football.json完全指南 【免费下载链接】football.json Free open public domain football data in JSON incl. English Premier League, Bundesliga, Primera Divisin, Serie A and more - No API key required ;-) 项目地址: https:/…...

htcw_esp_panel:ESP32嵌入式显示与触摸的编译期硬件抽象框架

1. htcw_esp_panel&#xff1a;面向嵌入式显示与人机交互的全栈式硬件抽象层htcw_esp_panel 是一个专为 ESP32 系列 SoC&#xff08;包括 ESP32-S2/S3/C3/P4&#xff09;设计的轻量级、可配置化硬件抽象库。它并非简单的驱动封装&#xff0c;而是一套覆盖显示、触摸、按键、SD …...

ANSYS仿真焊接—切割—激光熔覆仿真、温度场、应力场、热应力、残余应力仿真 3D打印,增材制造

ANSYS仿真焊接—切割—激光熔覆仿真、温度场、应力场、热应力、残余应力仿真 3D打印&#xff0c;增材制造&#xff0c;附带完整的APDL命令流代码与讲易与实例 赠送apdl命令参考手册&#xff0c;多本焊接相关pdf版书籍 适合本科生写毕设论文&#xff0c;或者研究生初学APDL增材制…...

5个智能诊断技巧:如何快速定位开源项目性能瓶颈?

5个智能诊断技巧&#xff1a;如何快速定位开源项目性能瓶颈&#xff1f; 【免费下载链接】klipper Klipper is a 3d-printer firmware 项目地址: https://gitcode.com/GitHub_Trending/kl/klipper 当我们面对开源项目的性能问题时&#xff0c;往往陷入"重启大法&qu…...