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

从头学PHP之数组输出基本函数

上期我们讲到了数组,数组是个特殊的变量,在程序中的重要程度很高,大部分数据处理的时候会用到这种特殊的变量,那么现在让我们继续深入一下吧。
上期我们打印出了数组的值,用print_r()或者var_dump()这俩函数,在本期中会涉及到用循环输出数组的所有元素,和用特定的key值来获取指定元素

一、获取数组指定元素

1、一维数组

数值数组
$cars=array("Volvo","BMW","Toyota");

如果我们想取出某个元素 那么我们可以用数组名+下标(key)的方式
因为是数值数组所以key必须是整数例如 0,1,2
语法:

$cars[num]

示例
如果我们想取得数组内第一个元素的值

echo $cars[0];

结果:
Volvo

关联数组
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

如果我们想取出某个元素 那么我们可以用数组名+下标(key)的方式
关联数组每个值有固定的key

语法:

$age["key"]

示例:
如果我们想取得下标(key)为Peter的值

$age["Peter"]

结果:
35

2、 多维数组

上期我们讲了多维数组的概念
语法:

1、数值数组
array (array (elements...),array (elements...),...
)

在这里插入图片描述
所以我们想取某个元素时根据上图中就可以获取到

<?php
// 二维数组:
$cars = array
(array("Volvo",100,96),array("BMW",60,59),array("Toyota",110,100)
);
?>

比如我们想取得$cars数组中第一个数组中的第二个元素

$cars[0][1]

输出:
100

2、关联数组

语法:

array ("key1"=> array (elements...),"key2"=> array (elements...),...
)

在这里插入图片描述
示例:

<?php
// 二维数组:
$cars = array
("Volvoinfo"=> array("Volvo",100,96),"BMWinfo"=>array("BMW",60,59),"Toyotainfo"=>array("Toyota",110,100)
);
?>

比如我们想取得 ”Volvoinfo“中的第一个元素

$cars["Volvoinfo"][0]

结果
Volvo

二、遍历数组

上期我们讲到数组有 ,数值数组、关联数组、多维数组
现在有两种方式遍历数组

  1. for循环遍历
  2. foreach循环遍历

1、for循环遍历

用for循环遍历的话一般只用于遍历数值数组,for循环的参数咱们应该还记得吧
语法

for(初始值,条件,增量){}

那咱们怎么确定用于循环的参数呢呢?

  1. 初始条件,因为数值数组的ID值是从0开始的(上期有讲)所以当循环数值数组时初始值维0
  2. 条件,我们循环不可能无限循环,当数组内的元素被全部遍历之后那么循环就该停止,所以数组的长度,或者说数组内元素的个数就是咱们判断的条件,当循环次数大于数组的长度(个数)时,停止循环

示例:

<?php
//定义数组
$cars=array("Volvo","BMW","Toyota");
//获取数组长度
$arrlength=count($cars);
//开始循环
for($x=0;$x<$arrlength;$x++)
{echo $cars[$x];echo "<br>";
}
?>

输出:

Volvo
BMW
Toyota
本期会讲关于数组的一些相关函数,获取数组长度的函数也会包括在内

2、foreach循环遍历

foreach循环不管是关联数组还是数值数组都可以用,也是遍历循环中最常用的
语法:

foreach($array as $key=>$val){}

foreach循环就不用判断数组的长度,当数组内的元素被循环遍历完成之后就会停止循环比较省心

示例:

<?php
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");foreach($age as $x=>$x_value)
{echo "Key=" . $x . ", Value=" . $x_value;echo "<br>";
}
?>

三、数组基本函数

  1. count()用于对数组或 Countable 对象中的所有元素进行计数
  2. array_push()将一个或多个单元压入数组的末尾(入栈)
  3. array_pop() 弹出数组最后一个单元(出栈)
  4. array_shift()将数组开头的单元移出数组
  5. array_unshift()在数组开头插入一个或多个单元
  6. array_slice()从数组中取出一段
  7. array_merge()合并一个或多个数组
  8. array_key_exists()检查数组里是否有指定的键名或索引
  9. array_search()在数组中搜索给定的值,如果成功则返回首个相应的键名

我都把相应函数的详细信息添加了超链接,大家可以点击跳转到官方网站(英语好的自行阅读,英语不好的,在网页 右击-》翻译为中文)

在这里插入图片描述

预告

下期讲 对象

http://www.lryc.cn/news/471044.html

相关文章:

  • 基于SSM+小程序的4S店客户管理系统(汽车2)
  • ZYNQ AXI_Timer 中断
  • UE5之5.4 第一人称示例代码阅读2 子弹发射逻辑
  • Python 实现日期计算与日历格式化输出(万年历)
  • 10.28.2024刷华为OD C题型
  • 映射问题的解决办法(mybaitis)
  • 关于机器学习方向学习的一些建议(过来人)
  • 【云原生】云原生后端:网络架构详解
  • 期货资管子系统框架设计JS路径及源代码分享
  • 【YOLO 系列】基于YOLO的工业自动化轴承缺陷检测系统【python源码+Pyqt5界面+数据集+训练代码】
  • Word中Normal.dotm样式模板文件
  • 生成式 AI 与向量搜索如何扩大零售运营:巨大潜力尚待挖掘
  • WonderWorld:斯坦福与 MIT 联手打造实时交互生成图像,单图秒变 3D 虚拟世界
  • 2024年【制冷与空调设备安装修理】考试内容及制冷与空调设备安装修理最新解析
  • PHP const 和 define主要区别
  • 期中前学习复习总结
  • K8S如何基于Istio重新实现微服务
  • MediaPipe 与 OpenCV 的结合——给心爱的人画一个爱心吧~
  • 心觉:成大事,不怕慢,就怕站
  • 练习LabVIEW第二十三题
  • 集成对接案例分享:金蝶云与聚水潭数据对接
  • 高级主题-灾难恢复与业务连续性
  • R语言实现随机森林分析:从入门到精通
  • 【vs2022】windows可用的依赖预编译库
  • 基础设施即代码(IaC):自动化基础设施管理的未来
  • C# 创建型设计模式----原型模式
  • Python数据分析NumPy和pandas(十五、pandas 数据加载、存储和文件格式)
  • 正则表达式以及密码匹配案例手机号码脱敏案例
  • 五、数组切片make
  • SSA-CNN-LSTM-MATT多头注意力机制多特征分类预测