루프
컴퓨터 과학에서 루프는 특정 조건이 충족될 때까지 일련의 명령을 반복하는 프로그래밍 구조입니다. 프로그래머는 루프를 사용해 값을 차례로 확인하고, 숫자의 합을 더하고, 함수를 반복 실행하는 등 여러 작업을 수행합니다.
모든 최신 프로그래밍 언어는 루프를 지원하지만, 구현 방식과 구문은 서로 다를 수 있습니다. 가장 일반적인 루프 유형으로는 while 루프와 for 루프가 있습니다.
While 루프
while 루프는 가장 단순한 형태의 프로그래밍 루프입니다. 조건이 유효한 동안 계속 반복하라고 지정합니다. 아래 PHP 예제에서 while 루프는 i가 num과 같아질 때까지 계속됩니다.
$i = 1;
$num = 21;
while ($i < $num) // stop when $i equals $num
{
echo "$i, ";
$i++; // increment $i
}
$i가 1이고 $num이 21이면 루프는 1, 2, 3, 4… 등과 같은 값을 20까지 출력합니다. 그런 다음 while 조건이 충족되었으므로 20번의 반복 후 루프가 중지되거나 "종료"됩니다.
For 루프
for 루프는 while 루프와 비슷하지만 소스 코드를 간결하게 작성할 수 있습니다. for 루프 문은 시작점과 끝점, 각 반복에 사용할 증가값을 정의합니다. 아래는 위의 동일한 루프를 for 루프로 정의한 것입니다.
$num = 21;
for ($i = 1; $i < $num; $i++) // stop when $i equals $num
{
echo "$i, ";
}
for 루프와 while 루프는 서로 바꿔 사용할 수 있는 경우가 많지만, 한쪽을 사용하는 것이 더 적합한 경우가 많습니다. 대부분의 경우 for 루프가 더 간결하고 읽기 쉽기 때문에 선호됩니다. 그러나 일부 상황에서는 while 문이 더 효율적일 수 있습니다. 예를 들어 다음 PHP 문은 한 줄의 코드만 사용해 MySQL 결과의 모든 값을 배열로 불러오는 데 사용할 수 있습니다.
while ($row = mysql_fetch_array($result))
NOTE: 루프는 지정된 특정 조건이 충족될 때까지 반복되므로, 어느 시점에는 루프가 종료되도록 해야 합니다. 조건이 충족되지 않으면 루프가 무한히 계속되어 무한 루프가 생성됩니다. 무한 루프가 발생할 수 있는 코드를 작성하는 것은 좋지 않은 프로그래밍 방식입니다. 무한 루프가 프로그램을 중단시킬 수 있기 때문입니다.
지식 테스트하기