while문 궁금한점..

while문 궁금한점..

QA

while문 궁금한점..

답변 2

본문


$start = date("Y-m-01"); //2017-11-01
$end = date("Y-m-d"); //2017-11-21
 
while ($start <= $end) {
 echo $start;
}

 

하면 무한루프가도는데 무슨이유때문인지 모르겠습니다..메뉴얼을봐도ㅠㅠㅠ

이 질문에 댓글 쓰기 :

답변 2

위의 로직으로만 보면

whiile문이 무조건 참 입니다.

 

while 안에서 시작일자를 변경해서 증가시켜줘야 해결이 될겁니다.

 


$start = date("Y-m-01"); //2017-11-01
$end = date("Y-m-d"); //2017-11-21
 
while ($start <= $end) {
//$start가 $end보다 작거나 같으면 반복
//$start가 $end보다 크거나 같으면 반복문 종료
 
 echo $start."<br>";
 $start++;
}

이런거 말씀하시는 건가요?

 

무한루프를 도는이유는

$start의 시작값이 반복적으로 증감되어 $end와 같을때 까지 반복합니다

그런데 $start++; 증감변수가 없으므로 계속 반복을 하여도 $start와 $end가 같지 않으므로 무한루프를 돌게 되는 것입니다

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 123,757
© SIRSOFT
현재 페이지 제일 처음으로