while문 궁금한점..
본문
$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가 같지 않으므로 무한루프를 돌게 되는 것입니다
!-->
답변을 작성하시기 전에 로그인 해주세요.