지정된 횟수만큼 또는 지정된 조건이 true인 경우 코드 블록을 반복합니다.
PHP 루프
코드를 작성할 때 동일한 코드 블록을 반복해서 실행해야 하는 경우가 많습니다. 이 작업을 수행하기 위해 코드에서 루프 문을 사용할 수 있습니다.
PHP에서는 다음과 같은 루프문이 제공됩니다.
1. while - 지정된 조건이 true인 한 루프는
2. ...while - 먼저 코드 블록을 한 번 실행한 다음 지정된 조건이 true일 때 루프를 반복합니다
3. for - 지정된 횟수만큼 코드 블록을 실행하는 루프
4 . foreach - 배열의 각 요소에 따라 코드 블록을 반복하려면
while 루프
while 루프는 다음 블록을 실행합니다. 지정된 조건이 참이 아닐 때까지 반복적으로 코드를 작성합니다.
while은 부울 루프입니다. while(부울 판단)의 값이 true이면 중괄호로 묶인 코드가 실행됩니다. false인 경우 중지하고 후속 코드를 실행합니다.
구문
while(조건)
{
실행할 코드;
}
인스턴스
다음 예에서는 먼저 변수 i의 값을 1($i=1;)로 설정합니다.
그러면 i가 5보다 작거나 같은 동안 while 루프가 계속 실행됩니다. 루프가 실행될 때마다 i는 1씩 증가합니다.
<html> <body> <?php $i=1; while($i<=5) { echo "The number is" . $i . "<br>"; $i++; } ?> </body> </html>
출력:
숫자는 1
숫자는 2
숫자는 3
The 숫자는 4
숫자는 5입니다
do...while문
do .. .while 문은 코드를 한 번 이상 실행한 다음 조건을 확인하고 조건이 true인 동안 루프를 반복합니다.
구문
do
{
실행할 코드;
}
while(조건);
예제
다음 예에서는 먼저 변수 i의 값을 1($i=1;)로 설정합니다.
그런 다음 do...while 루프를 시작합니다. 루프는 변수 i의 값을 1씩 증가시킨 다음 이를 출력합니다. 먼저 조건(i가 5보다 작거나 같음)을 확인하세요. i가 5보다 작거나 같으면 루프가 계속 실행됩니다.
<html> <body> <?php $i=1; do { $i++; echo "The number is" . $i . "<br>"; } while ($i<=5); ?> </body> </html>
출력:
숫자는 2
숫자는 3
숫자는 4
숫자는 5
숫자는 6
do...while과 while의 차이점
do...while과 while의 차이점은 값이 서로 다른 시간에 확인된다는 점입니다.
do-while while 판단이 참인지 아닌지에 관계없이 코드 블록 루프 문은 한 번 실행되며, 한 번 실행이 보장됩니다(매 루프 후에 표현식의 진리값을 확인합니다) . 그러나 이전 while 루프는 불리언 판단 영역을 확인하고 그것이 참이면 실행합니다. 확립되지 않은 경우에는 실행되지 않습니다.
코드로 검증해보자:
<?php $i = 0; do { echo $i; } while ($i > 0); ?>
위 코드에서 $i는 당연히 0보다 크지 않고, 역시 실행된다.
for 루프와 foreach 루프에 대해서는 다음 장에서 설명하겠습니다.