Menu
Coddy logo textTech

키와 값으로 반복하기

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

이전 강의에서 foreach가 배열의 각 값에 접근할 수 있게 해주는 방법을 배웠습니다. 하지만 키도 필요하다면 어떻게 할까요? 이것은 연관 배열과 작업할 때 특히 유용합니다.

foreach 루프는 각 반복에서 키와 값을 모두 제공하는 확장된 구문을 가집니다:

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

foreach ($person as $key => $value) {
    echo "$key: $value\n";
}
?>

이것은 다음과 같이 출력됩니다:

name: Alice
age: 25
city: Paris

구문 foreach ($array as $key => $value)은 현재 키를 $key에, 해당 값을 $value에 할당합니다. 이 변수들은 원하는 대로 이름을 지을 수 있습니다—단, 설명적인 이름을 유지하세요.

이것은 키가 숫자 인덱스인 인덱스 배열에서도 작동합니다:

<?php
$colors = ["red", "green", "blue"];

foreach ($colors as $index => $color) {
    echo "$index: $color\n";
}
?>

이것은 다음과 같이 출력합니다:

0: red
1: green
2: blue

키와 값에 모두 접근할 수 있으면 레이블이 있는 데이터를 표시하거나 키에 의존하는 작업을 수행하기 쉽습니다.

challenge icon

챌린지

쉬움

키와 값이 포함된 제품을 나타내는 JSON 객체를 포함하는 입력의 한 줄을 읽으세요 (예: {"name":"Laptop","price":"999","stock":"25"}).

제품 데이터를 반복하기 위해 키-값 구문을 사용한 foreach 루프를 사용하세요. 각 키와 해당 값을 다음 형식으로 출력하세요:

[key] => [value]

각 키-값 쌍을 별도의 줄에 출력하세요.

예제 1:

입력값이 {"name":"Laptop","price":"999","stock":"25"}인 경우 출력은 다음과 같아야 합니다:

name => Laptop
price => 999
stock => 25

예제 2:

입력값이 {"title":"PHP Basics","author":"John","pages":"350"}인 경우 출력은 다음과 같아야 합니다:

title => PHP Basics
author => John
pages => 350

예제 3:

입력값이 {"city":"Paris","country":"France"}인 경우 출력은 다음과 같아야 합니다:

city => Paris
country => France

치트 시트

foreach 루프는 확장된 구문을 사용하여 각 반복에서 키와 값을 모두 제공할 수 있습니다:

foreach ($array as $key => $value) {
    // $key와 $value 사용
}

연관 배열을 사용한 예제:

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

foreach ($person as $key => $value) {
    echo "$key: $value\n";
}

출력:

name: Alice
age: 25
city: Paris

이 구문은 키가 숫자 인덱스인 인덱스 배열에서도 작동합니다:

$colors = ["red", "green", "blue"];

foreach ($colors as $index => $color) {
    echo "$index: $color\n";
}

출력:

0: red
1: green
2: blue

직접 해보기

<?php
// JSON 입력 읽기
$input = trim(fgets(STDIN));

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

// TODO: 아래에 코드 작성
// 제품 데이터를 반복하기 위해 키-값 구문을 사용한 foreach 루프 사용
// 각 키와 값을 형식: [key] => [value]로 출력

?>
quiz icon실력 점검

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

기초의 모든 레슨