使用 array_unshift 添加元素
本课属于 Coddy PHP 学习旅程的“逻辑与流程”单元。第 12 课,共 68 课。
array_push() 会将元素添加到数组末尾,而 array_unshift() 函数则相反。它会将一个或多个元素添加到数组开头。这个函数会直接修改原数组,并返回数组的新长度。
以下是基本语法:
<?php
$tasks = ["buy groceries", "do laundry"];
array_unshift($tasks, "urgent meeting");
print_r($tasks); // 输出:Array ( [0] => urgent meeting [1] => buy groceries [2] => do laundry )
?>注意,新元素会成为索引 0,所有现有元素的索引都会增大。重新编制索引会自动完成:array_unshift() 会更新所有数字键,以保持正确的顺序。
你也可以一次添加多个元素:
<?php
$priorities = ["medium task"];
array_unshift($priorities, "high priority", "critical task");
print_r($priorities); // 输出:Array ( [0] => high priority [1] => critical task [2] => medium task )
?>当你需要为列表中的项目设置优先级时,这个函数特别有用,比如将紧急任务添加到待办列表的顶部,或将高优先级项目插入队列的前端。
挑战
简单你将收到两个输入:一个 JSON 格式的初始通知数组,以及一条要添加的新紧急通知。读取这两个输入,将 JSON 字符串转换为数组,使用 array_unshift() 将紧急通知添加到数组开头,并使用 print_r() 输出最终数组。
输入格式:两行。第一行包含一个 JSON 数组(示例:["meeting reminder","email received"]),第二行包含要添加的紧急通知
预期输出:添加紧急通知到开头后的数组,使用 print_r() 显示
亲手试试
<?php
// 读取包含通知的 JSON 数组
$jsonInput = fgets(STDIN);
$notifications = (array)json_decode($jsonInput, true);
// 读取要添加的紧急通知
$urgentNotification = trim(fgets(STDIN));
// TODO: 在下方编写代码,将紧急通知添加到数组开头
// 输出最终数组
print_r($notifications);
?>这节课包含一个小测验。开始学习即可作答,并记录你的进度。
逻辑与流程中的所有课
自己练习: PHP 在线编译器