웹마스터 팁

PHP의 제어문은 C의 제어문과 비슷합니다.
if, else, elseif, while, do∼while, for, break, continue, switch, require, include 등이 제어문에서 사용됩니다.
이번 시간에는 if, else, elseif, while, do∼while 문의 쓰임새를 간단한 실습을 통해서 살펴보기로 하겠습니다.


1.if 문
이거 무지무지 많이 쓰이는 문장입니다. 이거 제대로 사용 못하면 PHP 프로그램 하나도 못 만듭니다.
기본적으로,
if (표현식)
명령문
과 같은 식으로 씁니다.
if 다음의 괄호 안에 참과 거짓을 구분하는 표현식을 쓰고 이 표현식이 참이면 명령문을 실행합니다.
그러나 이건 명령문이 단 한 줄일 때의 경우이고 명령문이 여러 문장이면 중괄호({})를 사용하여 반드시 묶어 주어야 합니다. 그리고 대개의 경우 명령문이 단 한 줄이라도 중괄호로 묶어주는 경우가 많습니다.

1 : <?
2 : $a = 10;
3 : $b = 3;
4 : if($a>$b) {
5 : echo "$a 가 $b 보다 더 크다.";
6 : }
7 : if($a<=$b) {
8 : echo "$a 가 $b 보다 작거나 같다.";
9 : }
10: ?>

5행과 8행을 보면 $a와 $b 뒤에 한 칸을 띄었습니다.
만약 "$a가 $b보다..."와 같이 사용하면 "$a가"까지 하나의 변수로 인식하기 때문에 원하는 결과가 나오지 않습니다. 반드시 변수 뒤에는 한 칸을 띄어 써야 합니다.

2.else 문
위의 if 문에서 표현식이 거짓일 경우에 실행하는 문장을 나열합니다. 따라서
if (표현식)
명령문 1
else
명령문 2
와 같은 식으로 사용하죠.
위의 if문을 else를 사용하여 바꾸면 이렇게 됩니다.

1 : <?
2 : $a = 10;
3 : $b = 3;
4 : if($a>$b) {
5 : echo "$a 가 $b 보다 더 크다.";
6 : } else {
8 : echo "$a 가 b$ 보다 더 작거나 같다.";
9 : }
10: ?>

3.elseif 문
else와 if를 합쳐 놓은 것과 같죠.

1 : <?
2 : $a = 10;
4 : if($a<5)
5 : echo "$a 가 5보다 작다.";
6 : elseif($a<10)
7 : echo "$a 는 10보다 작다.";
8 : elseif($a<15)
9 : echo "$a 는 15보다 작다.";
10: else
11:echo "$a 는 15보다 크거나 같다.";
12: ?>

4.while 문
표현식이 참인 동안 계속 명령문을 실행합니다.
while (표현식)
명령문


1 : <?
2 : //1부터 10까지의 출력합니다.
3 : $number=1;
4 : while ($number <= 10) {
5 : echo $number."<br$gt;";
6 : $number=$number+1;
7 : }
8 : ?>

6행을 C언어에서와 같이 $number += 1이라고 써도 됩니다.(C언어에 대한 경험이 없는 분은 그냥 무시하고 넘어가세요.)
5행에서 문자열 연산자(.)를 잘 보시구요.
2행의 //는 실제로 실행되지 않는 주석문입니다.

5.do ∼ while 문
while 문과 비슷하지만 일단 명령문을 한번 실행하고 난 다음 while의 표현식을 점검합니다.
do
명령문
while (표현식)


위에서 실습한 1부터 10까지 출력하는 프로그램을 do∼while 문을 사용해서 만들면 다음과 같습니다.

1 : <?
2 : //1부터 10까지의 출력합니다. (do - while 문 사용)
3 : $number=1;
4 : do {
5 : echo $number."<br$gt;";
6 : $number=$number+1;
7 : } while ($number <= 10)
8 : ?>

크게 어렵지는 않은 내용이지만 대개 중괄호({})와 문장의 끝을 나타내는 세미콜론(;) 그리고 echo 문에 사용하는 큰따옴표("")를 쓸 때 실수하여 오류가 나는 경우를 많이 봅니다.

이상 동주아빠 손병목이었습니다.
제목 글쓴이 날짜
[동주아빠] PHP 게시판(16강) - 입력 글 DB 저장(2) [4] 손병목 2002.12.25
[동주아빠] PHP 게시판(15강) - 입력 글 DB 저장(1) [2] 손병목 2002.12.25
[동주아빠] PHP 게시판(15강) - 입력 글 DB 저장(1) [3] 손병목 2002.12.25
[동주아빠] PHP 게시판(14강) - 게시판용 테이블 만들기 [3] 손병목 2002.12.25
[동주아빠] PHP 게시판 - 글쓰기 입력 write.php [5] file 손병목 2002.12.25
웹폰트 그딴거 난 몰라! TTF가 폰트 파일인건 알아! ^.^ [3] 아이쿠 2002.12.25
[동주아빠] PHP 게시판 - 글쓰기 입력폼(3) 입력값검사 [5] 손병목 2002.12.25
[동주아빠] PHP 게시판 - 글쓰기 입력폼(2) [1] 손병목 2002.12.25
[동주아빠] PHP 게시판 - 글쓰기 입력폼(1) FORM 태그의 이해(上) [8] 손병목 2002.12.25
[동주아빠] PHP 게시판 만들기 기초 (8) 초간단 카운터 만들기 [2] 손병목 2002.12.25
[동주아빠] PHP 게시판 만들기 기초 (7) 사용자정의함수 [4] 손병목 2002.12.25
[동주아빠] PHP 게시판 만들기 기초 (6) require,include [5] 손병목 2002.12.25
[동주아빠] PHP 게시판 만들기 기초 (5) 제어문(下) [10] 손병목 2002.12.25
[동주아빠] PHP 게시판 만들기 기초 (5) 제어문(上) [9] 손병목 2002.12.25
[동주아빠] PHP 게시판 만들기 기초 (4) 연산자 [10] 손병목 2002.12.25
[동주아빠] PHP 게시판 만들기 기초 (3) 변수와 배열 [6] 손병목 2002.12.25
[동주아빠] PHP 게시판 만들기 기초 (2) [12] 손병목 2002.12.25
[동주아빠] PHP 게시판 만들기 기초 (1) 준비 [8] 손병목 2002.12.25
if 문으로 xxx.php?db=src 이런식으로 해보자..(제1탄 기초를 확!) [14] inging-zb41 2002.12.12
왕초보용 개판 오분전 황당 쿠키(4) [2] 미친개 2002.12.09