홈으로 | 무료회원가입 | 아이디/비번찾기
추천음악방송
운.영.자.1대1.상담
온라이브 음악방송
음악방송 앱 다운로드
보안∵서버∵쿠키
윈도우∵프레임
이미지∵배경
시간∵달력∵계산
상태바∵타이틀바
음악∵영상
폼∵전송∵테이블
키보드∵마우스
효과∵링크∵메뉴
Script∵php
기타
PHP 강좌
윈도우관련팁
웹관련팁
홈페이지제작팁
기본강좌
레지스트리
윈도우서버
리눅스서버
Android
반복실행문
10년 전
자 이번엔 반복문 입니다...

반복문이라는건 말 그대로 똑같은 작업을 반복하게 만드는거죠...
물론 반복에는 어느선까지만...이라는 조건이 있고요..
이 조건이 잘못되면 컴터는 죽을때까지 반복을 합니다...(-_-무식하긴..)

반복문에는 크게~ for와 while이 있습니다...
(뭐 또 다른게 있긴하죠?;;;)
암튼...for만 알아도 반복문은 끝납니다...

우선 for의 문법은...

for(초기값;조건;증가값)
{실행문}

위와 같습니다.
임의의 변수에 초기값을 주고 한번 반복할때마다 증가값만큼 증가하면서
조건에 맞으면 그만두는거죠;;; 예제를 봅시다...

test.php를 꺼내시고...소스를 다음과 같이 수정합니다.

<?
for($i=0 ;$i<5 ;$i++)
{$a++;}
echo $a;
?>

초기값으로 $i에다가 0을 줬죠...그리고 조건에서 $i<5 즉, $i가 5보다 작을때까지 입니다.....0이니까 5보다 작죠?...
그래서 { }를 한번 실행합니다....$a에는 값이 없었으니 $a++이니까 1이 되겠죠...
다시 올라갑니다....올라가면서 증가값만큼 $i가 증가하죠..$i++이니까 이제 $i는 1입니다.

자~ 다시 한바뀌 돌죠....$a++이니까 $a는 3가 되죠...
다시 올라가서 $i는 3이 되고...5보다 작으니까 또 돌죠...

그럼 이제 $a는 4가되죠...다시 올라가서 $i는 4....5보다 작으니까 또 돌고..
$a=5가 되었습니다.....다시 올라가서 $i는 5가 되죠.....
또 돌까요?......
아니죠..^^ 조건에서 $i<5 니까 5<5는 거짓이죠....
그래서 for문을 빠져나옵니다...

결국 화면에는 5가 찍히는거죠...;;

복잡하게 생각할것 없습니다.....
그냥 단순히 조건이 참인 동안만 죽어라 반복합니다.

보통 어느 언어를 배우든 반복문의 예제로 1부터 100까지의 합을 구하는걸 많이 하는데......우리도 한번 해보죠;;;

<?
for($i=1;$i<=100;$i++)
{$a=$a+$i;}
echo $a;
?>

쉽죠?....이렇게 하면 1부터 어디 까지든 더할수 있습니다.
구지 설명하자면 $i가 1부터 100까지 도는 거죠...
$a에는 이전의 자기 자신과 $i가 더해지는 겁니다...
이해가 안가신다면...풀어서 한번 보죠;;;

   $a  $i  $a(최종값)
1) 0 + 1 = 1
2) 1 + 2 = 3
3) 3 + 3 = 6
4) 6 + 4 = 10
        .
        .

이해가 가시리라 믿습니다....
이제 좀더 재미난걸 해볼까요?...

이런경우가 가끔있죠....
메뉴페이지를 만드는데 메뉴 버튼이 10개가 있습니다.
버튼이미지이름은 1.gif부터 10.gif라고 하죠;;;
이럴때 for문으로 한번 돌려볼까요?

<?
for($i=1;$i<=10;$i++)
{
echo"<img src=${i}.gif><br>";
}
?>

결과는?

<img src=1.gif><br><img src=2.gif><br><img src=3.gif><br><img src=4.gif><br><img src=5.gif><br><img src=6.gif><br><img src=7.gif><br><img src=8.gif><br><img src=9.gif><br><img src=10.gif><br>

위와 같이 나오겠죠;;;
그런데 이럴때 이렇게 해주면 소스가 이뿌게 나옵니다.

<?
for($i=1;$i<=10;$i++)
{
echo"<img src=${i}.gif><br>
";
}
?>

echo문 끝에
를 추가했죠....이건 한줄을 띄우라는것입니다.
<br>이랑은 다른개념인데...텍스트문서에서 한줄띄우기로 보시면 됩니다.
결국
를 아무리 많이 쳐봐야 브라우져에서는 똑같습니다.
단지 소스에서 한줄씩 떨어지게 되는거죠;;;

자 이번엔 좀더 난이도 있는 예제를 해보도록하죠;;;
ㅡ.ㅡ구구단 입니다...

자~ 해보세요;;;;



-_-;;애매하죠?

2단부터 9단까지니까....2부터 9까지 돌리면 되겠는데;;;
그 속이 문제로군요;;; 천천히 봅시다....

우선 2단부터 9단까지 만들죠;;

<?
for($i=2;$<=9;$i++)
{ }
?>

됐습니다;;
그럼 이제 저 소스와는 따로....2단만 만들어 볼까요?

<?
for($k=1;$k<=9;$k++)
{echo "2 x $k = ".(2*$k);}
?>

맞죠? ($i가 아닌 $k로 준건은 위에것과 겹치는것을 방지하기 위해서입니다)
.(점연산자)로 합친것 뿐인데....결국은 2 x 1 = 2 , 2 x 2 = 4...이렇게 나가겠죠? (수식연산은 따옴표 밖에서 해야 됩니다)

그럼이제 이 두개의 for문을 합쳐버리죠;;;
두번째 것을 처음것 속에 넣으면 되겠습니다~~~~~합체!!!

<?
for($i=2;$<=9;$i++)
{
for($k=1;$k<=9;$k++)
{echo "2 x $k = ".(2*$k);}
}
?>

끝난게 아니죠....이렇게 실행하면 2단만 죽어라 나옵니다...
이렇게 바꿔줘야죠....2를 $i로...

<?
for($i=2;$<=9;$i++)
{
for($k=1;$k<=9;$k++)
{echo "$i x $k = ".$i*$k;}
}
?>

됐죠?....
모양도 이뿌게 하기 위해서....줄좀 띄워줄까요.?

<?
for($i=2;$<=9;$i++)
{
for($k=1;$k<=9;$k++)
{echo "$i x $k = ".$i*$k."<br>";}
}
?>

점연산자를 헷갈리지 마세요....
점으로 구분된 세 단락이 보이시죠?

("$i x $k = ")  ($i*$k)  ("<br>")

이렇게 말이죠....$i*$k에 따옴표를 안붙인 이유는 앞서 얘기했듯이...
따옴표속에서는 계산이 되지 않기 때문입니다.

자 그럼 이제 몇단 인지도 한번 찍어볼까요?
-_-엇;;;근데 어떻게 해야되죠?

-_,- 이렇게~

<?
for($i=2;$i<=9;$i++)
{
echo "<br>${i}단<br>";
for($k=1;$k<=9;$k++)
{echo "$i x $k = ".$i*$k."<br>";}
}
?>

-_-?됐죠?;;
자 이번엔 while문입니다....
형태는.....

while(조건)
{실행문}

위와 같습니다.....
그냥 조건이 참일 동안 반복하는것인데...for랑은 약간 다르죠?
1부터 100까지 한번 더해보죠;;

<?
$i=1;
while($i<=100)
{
$a=$a+$i;
$i++;
}
echo $i;
?>

$i에다가 1을 주고...while문에 들어갑니다....
100보다 작거나 같죠?..참이니까 한번 돕니다...
돌고 나면 $i++이니까 $i는 2가 되죠...
그럼 아까 for문에서 처럼 돌게 되는거죠...
돌다가 돌다가......$i가 101이 되는순간 while문을 빠져나옵니다..

반복문은 하다보면 재밌고도 -_- 짜증납니다...
이해를 하셔야 겠죠;;;
추천추천 : 316 추천 목록
번호 제목
3,025
 PHP 파일 존재 여부 파악하기(로컬 파일 존재 및 원격지 파일 존재)
3,024
 [CSS] 박스 세로 가운데 중앙 정렬 6가지
3,023
 CSS Layout 수평 & 수직 정렬
3,022
 여러 도메인들 간 쿠키 공유하기
3,021
 태그 사이에 있는 텍스트를 추출
3,020
 [JQuery] textbox focus on off일때 숫자 콤마 보여주기
3,019
 쿠키 생성,가져오기,삭제
3,018
 사용자 함수 모음
3,017
 마우스,키보드 제한 ( 오른쪽클릭,드래그,영역선택등..)
3,016
 [HTML5] <video> - DOM으로 제어하기
3,015
 HTML5 video 태그에서 영상 좌우반전
3,014
 PHP - 특정 태그 및 문자열 추출, 제거
3,013
 [PHP] define과 defined의 차이
3,012
 우클릭 완벽차단 스크립트
3,011
 iframe 높이 100% 맞추기
3,010
 curl 함수를 이용한 HTTP REFERER 변경
3,009
 윈도우10 시스템 파일 및 Dism 검사
3,008
 텍스트 줄바꿈, 글자자르기 CSS
3,007
 jQuery Mobile에서 유용한 코드 10가지.
3,006
 [PHP] dirname()함수와 $_SERVER 관련 상수들
3,005
 [PHP] 파일 크기, 사이즈 불러오는 함수, filesize()
3,004
 [jQuery] jQuery Quick API
3,003
 [ transition ] 링크 hover 색상 변화 속도 조절
3,002
 PHP 5.3.0 에서 사라진 함수들 대체
3,001
 어떤 파일들이 include 나 require 되었는지 확인하는 함수(get_included_files)
목록
환상의뽕짝카페
트로트티비
뽕짝아가씨
트롯맘
종합성인가요방
카바레 음악
트롯디스코팡팡
관광 메들리
트롯카페
가요감상실
추억의옛노래
스페셜가요광장
BillBoard Free
추천가요모음
경음악.전자올겐
스페셜음악여행
WOLRD POPs
K-POP\BillBoard
POP TOP BEST

최신인기가요특집
추천가요\인기
F뮤직 인기\발라드
F뮤직 애창\트로트
트로트성인가요
인기가요
프리미엄 POP
경음악\기타
프리미엄 최신가요
프리미엄 성인가요
뮤직트로트 부산광역시 부산진구 가야동 ㅣ 개인정보취급방침
Copyright (C) musictrot All rights reserved.