在 PHP 中,关联数组用于以键值对的形式存储数据。它用于在单个变量中保存多个键值对。
创建关联数组
可以使用 array() 关键字创建关联数组。它可以在创建时通过在 array() 关键字内指定键值对并用逗号 (,) 分隔来初始化,也可以稍后通过使用键指定值来初始化。
或者,[ ] 也可以用来代替 array()。
语法
//创建一个空的关联数组
$MyArray = array();
$MyArray = [];
//创建关联数组并初始化
$MyArray = array(key1=>value1, key2=>value2, ...);
$MyArray = [key1=>value1, key2=>value2, ...];
//创建数组后初始化
$MyArray[key] = value;
访问关联数组的元素
可以使用以下键方式访问关联数组的元素。下面的示例说明了访问关联数组中的数据的方式。
<?php
//创建一个包含3个元素的数组
$MyArray = array(101=>"Red",
102=>"Blue",
103=>"Green");
//添加第四个和第五个元素
$MyArray[104] = "Black";
$MyArray[105] = "White";
echo "101 => ".$MyArray[101]."\n";
echo "102 => ".$MyArray[102]."\n";
echo "103 => ".$MyArray[103]."\n";
echo "104 => ".$MyArray[104]."\n";
echo "105 => ".$MyArray[105]."\n";
?>
上述代码的输出将是:
101 => Red
102 => Blue
103 => Green
104 => Black
105 => White
修改键的值
关联数组的任何键的值都可以使用其键并分配新值来更改。
<?php
$MyArray = array(101=>"Red",
102=>"Blue",
103=>"Green");
//改变键的值
$MyArray[101] = "Yellow";
//显示数组
print_r($MyArray);
?>
上述代码的输出将是:
Array
(
[101] => Yellow
[102] => Blue
[103] => Green
)
循环关联数组
通过使用 foreach 循环,可以访问关联数组的每个元素。考虑下面的示例:
<?php
$MyArray = array();
$MyArray[101] = "Red";
$MyArray[102] = "Blue";
$MyArray[103] = "Green";
echo "MyArray contains: \n";
foreach($MyArray as $x => $x_value)
echo "Key=". $x ." Value=". $x_value."\n";
?>
上述代码的输出将是:
MyArray contains:
Key=101 Value=Red
Key=102 Value=Blue
Key=103 Value=Green
访问双引号内的数组
关联数组中的值可以通过将其括在大括号内,可以在双引号内访问。请参阅下面的示例:
<?php
$arr = array('name' => 'John',
'age' => 25);
//在双引号内使用数组元素
echo "{$arr['name']} is {$arr['age']} years old.";
?>
上述代码的输出将是:
John is 25 years old.
完整的 PHP 数组参考
有关所有 PHP 数组函数的完整参考,请参阅完整的 PHP 数组参考。