Menu
Coddy logo textTech

Modifying Values by Key

Coddy PHP 여정의 기초 섹션에 포함된 레슨 — 71개 중 43번째.

인덱스 배열의 요소를 위치에 따라 수정하는 방법을 배운 것처럼, 키(keys)를 사용하여 연관 배열의 값을 업데이트할 수 있습니다. 구문은 동일합니다. 기존 키에 새로운 값을 할당하면 됩니다.

<?php
$person = [
    "name" => "Alice",
    "age" => 25,
    "city" => "Paris"
];

$person["age"] = 26;
$person["city"] = "London";

echo $person["age"];  // 26
echo $person["city"]; // London
?>

이미 존재하는 키에 값을 할당하면, PHP는 단순히 이전 값을 새 값으로 대체합니다. 키 자체는 변경되지 않으며 연결된 값만 업데이트됩니다.

이것은 데이터가 시간이 지남에 따라 변경되어야 할 때 유용합니다. 예를 들어, 사용자의 상태를 업데이트하거나, 제품의 가격을 변경하거나, 잘못 입력된 정보를 수정하는 경우입니다. 키는 안정적인 참조 지점 역할을 하며, 값은 필요에 따라 수정될 수 있습니다.

challenge icon

챌린지

쉬움

제품 정보를 나타내는 JSON 객체가 포함된 입력 한 줄을 읽습니다 (예: {"name": "Laptop", "price": 999, "stock": 50}).

그런 다음 네 개의 입력을 더 읽습니다:

  • 문자열 key1 - 업데이트할 첫 번째 키
  • 문자열 value1 - key1에 대한 새로운 값
  • 문자열 key2 - 업데이트할 두 번째 키
  • 문자열 value2 - key2에 대한 새로운 값

JSON 입력으로부터 연관 배열을 생성한 후, 다음을 수행합니다:

  1. key1과 연관된 값을 value1으로 업데이트합니다.
  2. key2과 연관된 값을 value2으로 업데이트합니다.
  3. key1의 업데이트된 값을 출력합니다.
  4. key2의 업데이트된 값을 출력합니다.

각 결과를 별도의 줄에 출력합니다.

예시:

입력이 {"name": "Laptop", "price": 999, "stock": 50}, price, 1099, stock, 45라면, 출력은 다음과 같아야 합니다:

1099
45

입력이 {"city": "Paris", "country": "France", "population": 2000000}, city, London, country, UK라면, 출력은 다음과 같아야 합니다:

London
UK

직접 해보기

<?php
// JSON 입력을 읽습니다
$jsonInput = trim(fgets(STDIN));

// 업데이트할 키와 값을 읽습니다
$key1 = trim(fgets(STDIN));
$value1 = trim(fgets(STDIN));
$key2 = trim(fgets(STDIN));
$value2 = trim(fgets(STDIN));

// JSON을 연관 배열로 변환합니다
$product = (array)json_decode($jsonInput, true);

// TODO: 아래에 코드를 작성하세요
// 1. key1에 해당하는 값을 value1으로 업데이트합니다
// 2. key2에 해당하는 값을 value2으로 업데이트합니다
// 3. 업데이트된 값들을 출력합니다

?>
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨