카테고리 없음

PHP foreach 반복문

codinglooking 2026. 4. 14. 11:36

foreach() 반복문은 배열이나 객체의 모든 요소를 간편하게 반복 처리할 때 사용하는 대표적인 구문입니다.

이 글은 코딩에브리바디(codingeverybody.kr)의 내용을 참조해 작성했습니다.

배열이나 객체를 순회해서 반복 처리

이는 배열과 객체에서만 동작한다는 의미이며, 다른 데이터 유형의 변수나 초기화되지 않은 변수에 대해 사용하려고 하면 오류가 발생합니다. 즉, foreach() 반복문은 오직 배열과 객체에서만 유효하며, 다른 유형의 데이터나 초기화되지 않은 변수에 대해서는 사용할 수 없습니다.

구문

foreach (iterable_expression as $value) {
    // $value를 활용한 반복 실행될 코드
}

 

foreach (iterable_expression as $key => $value) {
    // $key와 $value를 활용한 반복 실행될 코드
}

 

예제

기본 예제

$fruits = ['apple', 'banana', 'orange'];

foreach ($fruits as $value) {
    echo $value . '<br>';
}

// apple
// banana
// orange

 

$fruits = [
	'apple' => 'red',
	'banana' => 'yellow',
	'orange' => 'orange'
];

foreach ($fruits as $key => $value) {
    echo '과일: ' . $key . ', 색상: ' . $value . '<br>';
}

// 과일: apple, 색상: red
// 과일: banana, 색상: yellow
// 과일: orange, 색상: orange

 

배열의 index 찾기

$fruits = ['apple', 'banana', 'orange'];

$searchValue = 'banana';
$searchIndex = -1;

foreach ($fruits as $index => $value) {
    if ($value === $searchValue) {
        $searchIndex = $index;
        $found = true;
    }
}

if ($searchIndex !== -1) {
    echo "인덱스 " . $searchIndex . "에서 '" . $searchValue . "' 값을 찾았습니다.";
} else {
    echo "'" . $searchValue . "' 값을 찾지 못했습니다.";
}

// 출력: "인덱스 1에서 'banana' 값을 찾았습니다."

 

배열의 마지막 index 찾기

$fruits = ['apple', 'banana', 'orange'];

$lastIndex = null;

foreach ($fruits as $index => $value) {
    $lastIndex = $index;
}

if ($lastIndex !== null) {
    echo '마지막 인덱스: ' . $lastIndex;
} else {
    echo '배열이 비어있습니다.';
}

// 출력: '마지막 인덱스: 2'

 

$key와 $value 형식 활용

$person = [
    'name' => 'John',
    'age' => 30,
    'occupation' => 'Engineer',
    'country' => 'USA'
];

echo '개인 정보:<br>';

foreach ($person as $key => $value) {
    echo ucfirst($key) . ': ' . $value . '<br>';
}

// 개인 정보:
// Name: John
// Age: 30
// Occupation: Engineer
// Country: USA

 

조건문 활용

$numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

echo '짝수:<br>';

foreach ($numbers as $number) {
    if ($number % 2 === 0) {
        echo $number . '<br>';
    }
}

// 짝수:
// 2
// 4
// 6
// 8
// 10

 

배열에 데이터 저장 및 추가

$numbers = [1, 2, 3, 4, 5];
$newNumbers = [];

// 기존 배열의 값에 1을 더해 새로운 배열에 저장
foreach ($numbers as $number) {
    $newNumbers[] = $number + 1;
}

// 새로운 배열의 데이터 출력
foreach ($newNumbers as $number) {
    echo $number . '<br>';
}

// 2
// 3
// 4
// 5
// 6

 

또다른 출처 정보

https://codingeverybody.jp/php-foreach/

 

PHP foreach文:配列やオブジェクトを簡単に反復処理するための構文 - codingEverybody

foreach文は、配列やオブジェクトのすべての要素を簡単に反復処理するための基本的な構文です。

codingeverybody.jp

 

 

PHP foreach Loop – A Simple Way to Iterate Arrays and Objects

 

PHP foreach Loop – A Simple Way to Iterate Arrays and Objects - codingCourses

The foreach loop is a fundamental construct used to iterate through all elements of an array or object.

coding.courses