'array_unshift'로 추가하기
Coddy PHP 여정의 논리 & 흐름 섹션에 포함된 레슨 — 68개 중 12번째.
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()을 사용하여 표시된 배열
치트 시트
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이 되며, 기존 요소들은 자동으로 더 높은 인덱스로 이동합니다.
한 번에 여러 요소를 추가할 수 있습니다:
<?php
$priorities = ["medium task"];
array_unshift($priorities, "high priority", "critical task");
print_r($priorities); // 출력: Array ( [0] => high priority [1] => critical task [2] => medium task )
?>직접 해보기
<?php
// 알림의 JSON 배열을 읽습니다.
$jsonInput = fgets(STDIN);
$notifications = (array)json_decode($jsonInput, true);
// 추가할 긴급 알림을 읽습니다.
$urgentNotification = trim(fgets(STDIN));
// TODO: 배열의 시작 부분에 긴급 알림을 추가하는 코드를 아래에 작성하세요.
// 최종 배열을 출력합니다.
print_r($notifications);
?>이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.