Menu
Coddy logo textTech

새로운 이벤트 추가하기

Coddy PHP 여정의 논리 & 흐름 섹션에 포함된 레슨 — 68개 중 60번째.

challenge icon

챌린지

쉬움

두 개의 입력을 받게 됩니다: 이전 레슨의 기존 이벤트 배열을 나타내는 JSON 문자열과, 새 이벤트의 이름, 날짜, 장소를 나타내는 공백으로 구분된 세 개의 값이 두 번째 줄에 주어집니다.

첫 번째 입력은 다음과 같은 형식의 JSON 문자열입니다: [{"name":"Team Meeting","date":"2024-04-15","location":"Office"},{"name":"Conference","date":"2024-05-20","location":"Convention Center"}]

두 번째 입력은 다음과 같은 형식의 공백으로 구분된 세 개의 값입니다: Workshop 2024-06-10 Library

두 입력을 모두 읽으세요. JSON 문자열을 이벤트 배열로 디코딩합니다. 그런 다음, 두 번째 입력을 파싱하여 이벤트 이름, 날짜, 장소를 추출합니다. 이 이벤트에 대해 키가 "name", "date", "location"인 새로운 연관 배열을 생성하고, array_push()를 사용하여 이벤트 배열에 추가합니다.

새 이벤트를 추가한 후, 배열의 모든 이벤트를 반복하며 각 이벤트를 다음 형식으로 출력하세요:

Event: [name] on [date] at [location]

각 이벤트를 배열에 나타나는 순서대로 별도의 줄에 출력합니다.

입력 형식:

  • 첫 번째 줄: 기존 이벤트 배열을 나타내는 JSON 문자열
  • 두 번째 줄: 새 이벤트의 이름, 날짜, 장소를 나타내는 공백으로 구분된 세 개의 값 (예시: Workshop 2024-06-10 Library)

예상 출력: 각 이벤트(새로 추가된 이벤트 포함)를 다음 형식으로 별도의 줄에 출력: Event: [name] on [date] at [location]

직접 해보기

<?php
// 첫 번째 입력에서 JSON 문자열을 읽습니다.
$jsonInput = trim(fgets(STDIN));

// 두 번째 입력에서 새 이벤트 상세 정보를 읽습니다.
$newEventInput = trim(fgets(STDIN));

// JSON 문자열을 배열로 디코딩합니다.
$events = (array)json_decode($jsonInput, true);

// 새 이벤트 상세 정보(이름, 날짜, 장소)를 파싱합니다.
list($name, $date, $location) = explode(' ', $newEventInput);

// TODO: 아래에 코드를 작성하세요.
// 새 이벤트 배열을 생성하고 array_push()를 사용하여 events 배열에 추가하세요.
// 그런 다음 모든 이벤트를 순회하며 요구된 형식으로 출력하세요.

?>

논리 & 흐름의 모든 레슨