개발이야기/PHP

[PHP] foreach 반복문 사용법, 예제

후린개발자 2023. 10. 13.
반응형

foreach는 PHP에서 배열을 반복하거나 객체의 속성을 반복하는 데 사용되는 반복문입니다. 배열과 객체를 처리하고 그 내용을 접근하는 데 유용합니다.

 

 

사용법

//기본구조
foreach ($array as $value) {
    // $array의 각 요소를 $value에 대입하여 처리
}

foreach ($array as $key => $value) {
    // $array의 각 요소의 키와 값을 $key 및 $value에 대입하여 처리
}

 

$array: 반복할 배열 또는 객체.
$value: 현재 반복 중인 요소의 값을 나타내는 변수.
$key (옵션): 현재 반복 중인 요소의 키를 나타내는 변수.

 

 

예제

<?php
//배열 반복
$fruits = array("사과", "바나나", "체리", "딸기");
foreach ($fruits as $fruit) {
    echo $fruit . "<br>";
}
echo "<hr>";

//배열 키와 값 모두 사용
$student_scores = array("Alice" => 92, "Bob" => 85, "Charlie" => 78);
foreach ($student_scores as  $key => $value) {
    echo "$key: $value<br>";
}
echo "<hr>";

//객체 속성 반복
class Person {
    public $name = "홍길동";
    public $age = 30;
    public $city = "서울";
}
$person = new Person();
foreach ($person as $key => $value) {
    echo "$key: $value<br>";
}
echo "<hr>";

//문자열의 각 문자 순회
$string = "Hello";
foreach (str_split($string) as $char) {
    echo "$char<br>";
}
echo "<hr>";

//반복하려는 횟수에 따른 숫자 출력
$iterations = 5;
foreach (range(1, $iterations) as $number) {
    echo "반복 횟수: $number<br>";
}
echo "<hr>";

//2차원 배열 순회
$matrix = array(
    array(1, 2, 3),
    array(4, 5, 6),
    array(7, 8, 9)
);
foreach ($matrix as $row) {
    foreach ($row as $value) {
        echo $value . " ";
    }
    echo "<br>";
}
echo "<hr>";

//인덱스와 값을 사용한 배열 순회
$numbers = array(1, 2, 3, 4, 5);
foreach ($numbers as $index => $value) {
    echo "인덱스 $index: $value<br>";
}
echo "<hr>";

//연관 배열의 키 순회
$colors = array("red" => "빨강", "green" => "초록", "blue" => "파랑");
foreach (array_keys($colors) as $color) {
    echo "영어: $color, 한국어: " . $colors[$color] . "<br>";
}
echo "<hr>";
?>

 

1. 배열 반복

-배열인 $fruits를 정의하고 foreach 루프를 사용하여 $fruits 배열을 반복하고 각 과일을 출력합니다.


2. 배열 키와 값 모두 사용

-배열 $student_scores를 foreach 루프를 사용하여 $student_scores 배열을 반복하고 각 학생의 이름과 점수를 출력합니다.

3. 객체 속성 반복

-Person 클래스를 정의하고 이 클래스의 객체 $person를 생성합니다. $person 객체는 이름, 나이, 도시와 같은 속성을 가지고 있습니다. foreach 루프를 사용하여 $person 객체의 속성을 반복하고 각 속성의 이름과 값을 출력합니다.

4. 문자열의 각 문자 순회

-문자열 Hello 에 대해서 str_split 함수를 사용하여 문자열을 문자 단위로 분리하고, foreach 루프를 사용하여 각 문자를 출력합니다.

5. 반복하려는 횟수에 따른 숫자 출력

-$iterations 변수를 정의하고, range 함수와 foreach 루프를 사용하여 지정된 횟수만큼 반복하면서 숫자를 출력합니다.

6. 2차원 배열 순회

-2차원 배열 $matrix를 정의하고, foreach 루프를 중첩하여 각 요소를 출력합니다.

7. 인덱스와 값을 사용한 배열 순회

-배열 $numbers를 정의하고, foreach 루프를 사용하여 배열의 인덱스와 값을 출력합니다.

8. 연관 배열의 키 순회

-배열 $colors를 정의하고, array_keys 함수를 사용하여 배열의 키를 얻은 후, foreach 루프를 사용하여 키와 해당 값을 출력합니다.

 

 

소스코드 결과

 

반응형

댓글

💲 추천 글