인덱스로 요소 수정하기
Coddy PHP 여정의 기초 섹션에 포함된 레슨. 71개 중 37번째.
인덱스를 사용하여 배열 요소에 액세스하는 방법을 배웠습니다. 이제 해당 요소를 변경하는 방법을 살펴보겠습니다. 배열 요소를 수정할 때도 동일한 대괄호 구문을 사용하지만, 할당을 함께 사용합니다.
<?php
$fruits = ["Apple", "Banana", "Cherry"];
$fruits[1] = "Blueberry";
echo $fruits[1]; // Blueberry
?>여기서는 인덱스 1의 "Banana"를 "Blueberry"로 바꿨습니다. 원래 값은 사라집니다. 배열은 변경 내역을 보관하지 않습니다.
element의 인덱스를 알고 있다면 어떤 element든 수정할 수 있습니다:
<?php
$scores = [85, 90, 78];
$scores[0] = 95; // 첫 번째 점수 업데이트
$scores[2] = 82; // 마지막 점수 업데이트
echo $scores[0]; // 95
echo $scores[2]; // 82
?>목록의 데이터를 업데이트해야 할 때 유용합니다. 예를 들어 오타를 수정하거나, 가격을 업데이트하거나, 사용자의 상태를 변경할 때 사용할 수 있습니다. 인덱스는 PHP에 어떤 element를 교체해야 하는지 정확히 알려 주며, 다른 모든 element는 변경하지 않고 그대로 둡니다.
챌린지
쉬움쉼표로 구분된 값으로 이루어진 색상 목록을 포함하는 입력 한 줄을 읽습니다(예: Red,Green,Blue,Yellow).
그런 다음 입력을 세 개 더 읽습니다:
- 수정할 첫 번째 인덱스를 나타내는 정수
index1 - 해당 인덱스의 새 값을 나타내는 문자열
newValue1 - 수정할 두 번째 인덱스를 나타내는 정수
index2
쉼표로 구분된 입력에서 배열을 만든 다음:
index1의 요소를newValue1로 수정합니다index2의 요소를Purple로 수정합니다
수정된 배열 요소를 인덱스 0부터 마지막 인덱스까지 순서대로 각각 별도의 줄에 출력합니다.
예시:
입력이 Red,Green,Blue,Yellow, 0, Orange, 2라면 출력은 다음과 같아야 합니다:
Orange
Green
Purple
Yellow입력이 Apple,Banana,Cherry,Mango,Kiwi, 1, Grape, 4라면 출력은 다음과 같아야 합니다:
Apple
Grape
Cherry
Mango
Purple직접 해보기
<?php
// 쉼표로 구분된 색상 읽기
$colorsInput = trim(fgets(STDIN));
$colors = explode(',', $colorsInput);
// 수정 입력 읽기
$index1 = intval(trim(fgets(STDIN)));
$newValue1 = trim(fgets(STDIN));
$index2 = intval(trim(fgets(STDIN)));
// TODO: 여기에 코드를 작성하세요
// 1. index1의 요소를 newValue1로 수정
// 2. index2의 요소를 지침의 정확한 텍스트로 수정
// 각 요소를 별도의 줄에 출력
foreach ($colors as $color) {
echo $color . "\n";
}
?>이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
직접 연습해 보세요: 온라인 PHP 컴파일러