PHP/포스팅

[PHP] continue 제어문

짜집퍼박사(짜박) 2024. 11. 29. 00:42

PHP의 continue 문은 반복문에서 사용되며, 현재 반복을 건너뛰고 다음 반복으로 즉시 이동하게 합니다. 주로 특정 조건을 충족하는 경우에만 반복문의 나머지 코드를 건너뛰고 다음 반복으로 진행할 때 유용합니다.

 

continue 문법

continue;

continue <level>;

- continue;: 현재 반복을 종료하고 다음 반복으로 이동.
- continue <level>;: 중첩된 반복문에서 몇 단계 위의 반복문으로 이동할지 지정.

 

기본값은 1이며, 즉 현재 반복문을 가리킵니다.

 

예제와 설명

1. 기본 사용 예제

<?php
for ($i = 1; $i <= 5; $i++) {
    if ($i == 3) {
        continue; // 3일 때 현재 반복 건너뛰기
    }
    echo "숫자: $i<br>";
}
?>

결과:

숫자: 1
숫자: 2
숫자: 4
숫자: 5

설명:

$i가 3일 때 continue가 실행되어 반복문의 나머지 코드가 건너뛰어지고 다음 반복으로 진행됩니다.

 

2. continue와 foreach 사용

<?php
$numbers = [1, 2, 3, 4, 5];

foreach ($numbers as $number) {
    if ($number % 2 == 0) { // 짝수인 경우 건너뛰기
        continue;
    }
    echo "홀수: $number<br>";
}
?>

결과:

홀수: 1
홀수: 3
홀수: 5

설명:

짝수 조건을 만족하면 continue가 실행되어 나머지 코드를 건너뛰고 다음 요소로 이동합니다.

 

3. 중첩 반복문에서 continue 사용

<?php
for ($i = 1; $i <= 3; $i++) {
    for ($j = 1; $j <= 3; $j++) {
        if ($i == $j) {
            continue; // 현재 반복 건너뛰기
        }
        echo "i = $i, j = $j<br>";
    }
}
?>

결과:

i = 1, j = 2
i = 1, j = 3
i = 2, j = 1
i = 2, j = 3
i = 3, j = 1
i = 3, j = 2

설명:

$i와 $j가 같을 때 continue가 실행되어 안쪽 루프(for $j)의 나머지 코드가 건너뛰어지고 다음 반복으로 진행됩니다.

 

4. continue와 레벨 지정

continue에 숫자를 지정하면 중첩된 루프에서 몇 단계 위의 루프를 건너뛸지 제어할 수 있습니다.

<?php
for ($i = 1; $i <= 3; $i++) {
    for ($j = 1; $j <= 3; $j++) {
        if ($j == 2) {
            continue 2; // 바깥 루프($i)의 다음 반복으로 이동
        }
        echo "i = $i, j = $j<br>";
    }
}
?>

결과:

i = 1, j = 1
i = 2, j = 1
i = 3, j = 1

설명:

continue 2;가 실행되면 현재 반복문(for $j)뿐만 아니라 바깥 루프(for $i)의 다음 반복으로 즉시 이동합니다.

 

5. continue와 조건문

continue는 if와 함께 사용되어 조건에 따라 특정 코드를 건너뛸 수 있습니다.

<?php
for ($i = 1; $i <= 5; $i++) {
    if ($i % 2 == 0) {
        echo "$i는 짝수이므로 건너뛰기<br>";
        continue;
    }
    echo "$i는 홀수입니다.<br>";
}
?>

결과:

1는 홀수입니다.
2는 짝수이므로 건너뛰기
3는 홀수입니다.
4는 짝수이므로 건너뛰기
5는 홀수입니다.

 

continue와 비교: break

- continue: 현재 반복을 건너뛰고 다음 반복으로 이동합니다.
- break: 현재 반복문(또는 지정된 레벨)을 완전히 종료합니다.

 

사용 시 주의점

1. 가독성 저하 가능

- 반복문이 복잡한 경우 continue 사용은 흐름을 이해하기 어렵게 만들 수 있습니다.

- 간단한 조건문으로 대체할 수 있으면 continue를 피하는 것이 좋습니다.

2. 레벨 지정 남용 주의

continue <level>로 너무 높은 레벨을 지정하면 코드가 예상치 못한 방식으로 작동할 수 있습니다.

 

PHP의 continue 문은 조건부로 반복을 건너뛰는 간결하고 강력한 방법을 제공합니다. 단, 지나치게 복잡한 반복문에서 남용하지 않도록 신중히 사용하세요!

 

With ChatGPT

'PHP > 포스팅' 카테고리의 다른 글

[PHP] exit 제어문  (0) 2024.11.29
[PHP] break 제어문  (0) 2024.11.29
[PHP] goto 제어문  (0) 2024.11.29
[PHP] match 제어문  (0) 2024.11.28
[PHP] foreach 반복문  (0) 2024.11.28