添加新的键值对
本课属于 Coddy PHP 学习旅程的“基础知识”单元。第 44 课,共 71 课。
你已经学会了如何修改关联数组中的现有值。但是,如果你给一个尚不存在的键赋值,会发生什么?PHP 会自动为你创建它。
<?php
$person = [
"name" => "Alice",
"age" => 25
];
$person["city"] = "Paris";
$person["job"] = "Developer";
echo $person["city"]; // Paris
echo $person["job"]; // Developer
?>语法与修改数组相同:$array["key"] = value,但如果键不存在,PHP 会向数组中添加新的键值对,而不是更新已有的键值对。
在逐步构建关联数组时,这尤其有用:
<?php
$settings = [];
$settings["theme"] = "dark";
$settings["language"] = "en";
$settings["notifications"] = true;
echo $settings["theme"]; // dark
?>从空数组开始,并根据需要添加键值对,这是随着时间收集数据或事先不知道所有键时常见的做法。
挑战
简单从一个名为 $profile 的空关联数组开始。
读取以下输入:
- 一个字符串
key1,要添加的第一个键 - 一个字符串
value1,对应key1的值 - 一个字符串
key2,要添加的第二个键 - 一个字符串
value2,对应key2的值 - 一个字符串
key3,要添加的第三个键 - 一个字符串
value3,对应key3的值
将每个键值对添加到 $profile 数组中,然后打印:
- 与
key1关联的值 - 与
key2关联的值 - 与
key3关联的值
将每个结果单独打印在一行中。
示例:
如果输入是 username、alice123、email、alice@example.com、status 和 active,输出应为:
alice123
alice@example.com
active如果输入是 brand、Nike、size、42、color 和 black,输出应为:
Nike
42
black亲手试试
<?php
// 读取输入
$key1 = trim(fgets(STDIN));
$value1 = trim(fgets(STDIN));
$key2 = trim(fgets(STDIN));
$value2 = trim(fgets(STDIN));
$key3 = trim(fgets(STDIN));
$value3 = trim(fgets(STDIN));
// 先创建一个空的关联数组
$profile = [];
// TODO: 在下面编写你的代码
// 将每个键值对添加到 $profile 数组中
// 输出每个键对应的值
echo $profile[$key1] . "\n";
echo $profile[$key2] . "\n";
echo $profile[$key3] . "\n";
?>这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: PHP 在线编译器