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

上期我们讲到了数组,数组是个特殊的变量,在程序中的重要程度很高,大部分数据处理的时候会用到这种特殊的变量,那么现在让我们继续深入一下吧。

上期我们打印出了数组的值,用print_r()或者var_dump()这俩函数,在本期中会涉及到用循环输出数组的所有元素,和用特定的key值来获取指定元素

一、获取数组指定元素

1、一维数组

数值数组
php 复制代码
$cars=array("Volvo","BMW","Toyota");

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

因为是数值数组所以key必须是整数例如 0,1,2

语法:

php 复制代码
$cars[num]

示例

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

php 复制代码
echo $cars[0];

结果:
Volvo

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

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

关联数组每个值有固定的key

语法:

php 复制代码
$age["key"]

示例:

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

php 复制代码
$age["Peter"]

结果:
35

2、 多维数组

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

语法:

1、数值数组
php 复制代码
array (
    array (elements...),
    array (elements...),
    ...
)

所以我们想取某个元素时根据上图中就可以获取到

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

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

php 复制代码
$cars[0][1]

输出:
100

2、关联数组

语法:

php 复制代码
array (
   "key1"=> array (elements...),
   "key2"=> array (elements...),
    ...
)

示例:

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

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

php 复制代码
$cars["Volvoinfo"][0]

结果
Volvo

二、遍历数组

上期我们讲到数组有 ,数值数组、关联数组、多维数组

现在有两种方式遍历数组

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

1、for循环遍历

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

语法

php 复制代码
for(初始值,条件,增量){
	
}

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

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

示例:

php 复制代码
<?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循环不管是关联数组还是数值数组都可以用,也是遍历循环中最常用的

语法:

php 复制代码
foreach($array as $key=>$val){

}

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

示例:

php 复制代码
<?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()在数组中搜索给定的值,如果成功则返回首个相应的键名

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

预告

下期讲 对象

相关推荐
绵绵细雨中的乡音4 小时前
深入理解 ET 与 LT 模式及其在 Reactor 模型中的应用
服务器·网络·php
ServBay9 小时前
一个下午,一台电脑,终结你 90% 的 Symfony 重复劳动
后端·php·symfony
kali-Myon15 小时前
2025春秋杯网络安全联赛冬季赛-day2
python·安全·web安全·ai·php·pwn·ctf
IOsetting16 小时前
金山云主机添加开机路由
运维·服务器·开发语言·网络·php
kali-Myon16 小时前
2025春秋杯网络安全联赛冬季赛-day1
java·sql·安全·web安全·ai·php·web
kali-Myon16 小时前
2025春秋杯网络安全联赛冬季赛-day3
python·安全·web安全·ai·php·web·ctf
xqqxqxxq17 小时前
Java IO 核心:BufferedReader/BufferedWriter & PrintStream/PrintWriter 技术笔记
java·笔记·php
静听山水19 小时前
Redis的Pipeline (管道)
数据库·redis·php
hzb6666619 小时前
unictf2026
开发语言·javascript·安全·web安全·php
JaguarJack19 小时前
PHP 应用遭遇 DDoS 攻击时会发生什么 从入门到进阶的防护指南
后端·php·服务端