首页 文章资讯内容详情

PHP 关联数组

2026-06-04 1 花语

定义和用法

在PHP中,数组键=>值对的逗号分隔集合。这样的数组称为关联数组,其中值与唯一键相关联。关键部分必须是字符串或整数,而value可以是任何类型,甚至是另一个数组。

键的使用是可选的。如果数组仅由值组成,则它将成为索引数组,其中基于零的位置值索引将充当键。

数组对象可以通过array()函数进行初始化,也可以通过将元素放在方括号内来赋值[]

语法

//使用array()函数的关联数组 $arr=array(key1=>val1, key2=>val2,key3=val3,..); //使用赋值方法的关联数组 $arr=[key1=>val1, key2=>val2,key3=val3,..];

键应为整数或字符串。值组件可以是任何PHP类型。如果某个键重复出现,则最后分配的值将覆盖先前的值。我们可以通过以下语法访问与某个键关联的值-

$arr[key1];

PHP版本

从PHP5.4开始就可以使用方括号来分配数组

下面的示例使用array()函数声明一个关联数组

示例

<?php $arr=array(1=>"one", 2=>"two", 3=>"three"); var_dump($arr); ?>

输出结果

这将产生以下结果-

array(3) { [1]=> int(11) [2]=> int(22) [3]=> int(33) }

本示例使用方括号分配关联数组

示例

<?php $arr=[1=>"one", 2=>"two", 3=>"three"]; var_dump($arr); ?>

输出结果

这将产生以下结果-

array(3) { [1]=> string(3) "one" [2]=> string(3) "two" [3]=> string(5) "three" }

我们可以使用foreach循环遍历数组元素,如下所示:

示例

<?php $arr=[1=>"one", 2=>"two", 3=>"three"]; //使用foreach循环 foreach ($arr as $key=>$value){ echo $key . "=>" . $value . "\n"; } ?>

输出结果

这将产生以下结果-

1=>one 2=>two 3=>three

该示例显示了修改现有元素的值并使用方括号添加新的键-值对

示例

<?php $arr=[1=>"one", 2=>"two", 3=>"three"]; //修改数组元素 $arr[2]="twenty"; //add new element in array $arr[10]="ten"; //使用foreach循环 foreach ($arr as $key=>$value){ echo $key . "=>" . $value . "\n"; } ?>

输出结果

这将产生以下结果-

1=>one 2=>twenty 3=>three 10=>ten