반응형
Web Development · PHP for
PHP for 반복문 —
초기값 · 조건 · 증가식 3박자
반복 횟수가 정해진 작업에 가장 적합한 반복문
시작 오늘 분석할 코드
PHP의 가장 기본적인 for 반복문이다. (초기값; 조건; 증가식) 세 가지를 한 줄에 적어두는 형태로, 반복 횟수가 정해진 경우에 쓴다.
<?php for($i = 1; $i < 5; $i ++){ //반복문 for이고. (초기값, 조건, 증가식) //i변수에 1을 저장하고, i변수가 5보다 작을 때까지 반복한다. //i는 후위증가를 한다. print $i."회째의 반복입니다.<BR>"; //반복하는 횟수에 의해서 값이 누적되면서 출력이 된다. } ?>
실제 출력 미리보기
1회째의 반복입니다.
2회째의 반복입니다.
3회째의 반복입니다.
4회째의 반복입니다.
2회째의 반복입니다.
3회째의 반복입니다.
4회째의 반복입니다.
→ $i가 1부터 4까지 반복되며 출력. $i < 5이므로 5는 포함되지 않음.
용어 용어 정리
for정해진 횟수만큼 반복하는 키워드
초기값반복 시작 전에 1번만 실행 (변수 셋업)
조건매 반복 직전 검사 — 참이면 본문 실행
증가식본문 끝나면 실행 — 변수를 다음 단계로
$i ++후위증가 — $i를 1 더함 (i = i + 1과 동일)
.PHP의 문자열 연결 연산자 (변수 + 문자열)
< 5"5 미만" — 5는 포함하지 않음
; 세미콜론for 안에서 3가지 부분을 구분
1 for의 3가지 핵심 부분
for 옆 괄호 안에는 세미콜론으로 구분된 세 영역이 들어간다. 이 셋의 역할이 다르고, 실행 시점도 다르다.
for( 초기값 ; 조건 ; 증가식 ){ ↑ ↑ ↑ 1번만 실행 매번 검사 매 반복 끝 }
| 부분 | 예시 | 실행 시점 | 역할 |
|---|---|---|---|
| 초기값 | $i = 1 |
시작 전 1번 | 카운터 변수 준비 |
| 조건 | $i < 5 |
매 반복 시작 시 | 참이면 본문 실행 |
| 증가식 | $i ++ |
본문 끝난 후 | 다음 반복으로 변수 갱신 |
2 본 코드의 실행 흐름
[ $i = 1 ] ← 초기값 (1번만) │ ▼ [ $i < 5 ? ] ← 조건 검사 │참 ▼ [ "1회째..." 출력 ] ← 본문 │ ▼ [ $i ++ → $i = 2 ] ← 증가식 │ ▼ [ $i < 5 ? ] → 참 → "2회째..." → $i = 3 [ $i < 5 ? ] → 참 → "3회째..." → $i = 4 [ $i < 5 ? ] → 참 → "4회째..." → $i = 5 [ $i < 5 ? ] → 거짓 → 종료
※ 핵심 포인트
- 초기값은 시작 시 딱 1번만 실행 — 매 반복마다 1로 리셋되는 게 아님
- 조건이 거짓이면 본문이 0번 실행될 수도 있음 (선검사)
- 증가식은 본문이 끝난 뒤 실행 — 본문 안에서 $i를 직접 바꾸면 흐름이 꼬임
3
< 5와 <= 5의 한 끗 차이조건에서 부등호를 잘못 쓰면 반복 횟수가 1번 차이 난다. "몇 번 돌고 싶은지"를 명확히 정한 뒤 부등호를 골라야 한다.
$i < 5 (5 미포함)
본 코드 — $i가 1, 2, 3, 4일 때만 실행
→ 4번 반복
→ 4번 반복
$i <= 5 (5 포함)
$i가 1, 2, 3, 4, 5일 때 실행
→ 5번 반복
→ 5번 반복
관용적으로 "0부터 시작"하면
<, "1부터 시작"하면 <=를 자주 쓴다. 둘 다 "n번 반복"이 깔끔하게 떨어진다.4 문자열 연결 연산자
.PHP에서는 마침표 .가 문자열을 이어붙이는 연산자다. 자바스크립트의 +와 비슷한 역할이지만 PHP는 명확히 구분한다 — 숫자끼리는 +, 문자열은 ..
$i = 1; print $i."회째의 반복입니다.<BR>"; → "1" + "회째의 반복입니다.<BR>" → "1회째의 반복입니다.<BR>"
| 다른 작성법 | 결과 |
|---|---|
print $i."회째..."; |
본 코드 — 명시적 연결 |
print "$i회째..."; |
큰따옴표는 변수 자동 치환 — 같은 결과 |
print '$i회째...'; |
작은따옴표는 변수 치환 안 됨 — "$i회째"가 글자 그대로 출력 |
echo $i, "회째..."; |
echo의 콤마 다중 인자 — 같은 결과 |
반응형
5 for vs while — 언제 무엇을 쓰는가?
for
- 횟수가 정해진 반복
- "5번 출력", "배열 0~9 순회"
- 한 줄에 시작·조건·증가가 모여 있음
while
- 조건만 있는 반복
- "입력이 끝날 때까지", "파일 EOF까지"
- 몇 번 돌지 미리 모름
실무 규칙: "이 코드 몇 번 돌까?"가 사전에 답이 나오면 for, 안 나오면 while.
6 자주 하는 실수
| 실수 | 증상 | 해결 |
|---|---|---|
증가식 빠뜨림 ($i ++ 누락) |
무한 루프 (서버 멈춤) | $i를 변경하는 식 반드시 포함 |
구분자를 콤마로 씀 — for($i=1, $i<5, $i++) |
Parse error | 반드시 세미콜론 ; |
< 5와 <= 5 헷갈림 |
1번 더 또는 1번 덜 반복 | "몇 번 돌지" 명확히 결정 후 부등호 |
| 본문에서 $i를 또 변경 | 예측 못한 반복 횟수 | 증가식에만 맡기기 |
| 작은따옴표로 변수 출력 | $i가 글자 그대로 출력 |
큰따옴표 또는 . 연결 사용 |
7 for의 응용 — 다양한 패턴
// 거꾸로 카운트 for($i = 5; $i > 0; $i --) print $i; // 5 4 3 2 1 // 2씩 증가 for($i = 0; $i <= 10; $i += 2) print $i; // 0 2 4 6 8 10 // 여러 변수 동시 제어 for($i = 0, $j = 10; $i < $j; $i++, $j--) { print "$i / $j<BR>"; } // 무한 루프 (의도한 경우만) for(;;) { ... break ... }
핵심 한 줄 요약
for반복 횟수가 정해진 작업의 표준 반복문
3박자초기값 ; 조건 ; 증가식 (세미콜론 구분)
초기값시작 시 1번만 실행 — 카운터 셋업
조건매 반복 직전 검사 — 거짓 시 즉시 종료
증가식본문 끝난 후 — 다음 단계로 변수 변경
$i < 55 미포함 — $i는 1, 2, 3, 4 (4번 반복)
.문자열 연결 연산자 (PHP 전용)
반응형
'php' 카테고리의 다른 글
| PHP if 조건문 — 로그인 검증 예제로 배우는 && 연산자 (0) | 2026.06.12 |
|---|---|
| PHP foreach 반복문 — 배열 순회 전용 완전 정리 (0) | 2026.06.12 |
| PHP do-while 반복문 — 최소 1회 실행 보장 완전 정리 (0) | 2026.06.12 |
| XML 외부 CSS — block 레벨, 사용자 정의 태그 완전 정리 (0) | 2026.06.11 |
| CSS 외부 스타일시트 — th { background-color } 완전 정리 (0) | 2026.06.11 |
왕진 블로그

댓글