만 나이 계산하기.. 이해가 안가서 질문드립니다. ㅠㅠ

만 나이 계산하기.. 이해가 안가서 질문드립니다. ㅠㅠ

QA

만 나이 계산하기.. 이해가 안가서 질문드립니다. ㅠㅠ

답변 1

본문

책보며 독학 중인 사람입니다.. 제 스타일이 무엇이든, 이해 안되는거에 꽂혀버리면 이해 될때까지 하는 경향이 있어서 ㅠㅠ 미치겠습니다. 제가 이해를 못하는건지, 책이 잘 못된건지.. 모르겠어서..

적으면서 느끼는건데, 진짜 쓸데없는 질문인거 같기도 하고 .. 그냥 넘어가도 될꺼를.. 

 

책에서 나오는 계산식,예제문 그대로 궁금해서 물어봅니다.ㅜㅜ

돌아가는 구조는 알겠는데.. 날짜 부분이 이해가 안가네요 .. 

 

일단 서두가 너무 길었네요. 

elseif($birth_month == $now_month)

{  if($birth_day <= $now_day)

      $age= $now_year - $birth_year;

   else  $birth_day >= $now_day 일꺼고 ..

      $age= $now_year - $birth_year-1;}

여기서, 계산식을 보면 1~2월,3월 1~10일 까지가 (오늘 연도-출생연도) 인데, 

코드를 보면 저렇게 적혀있습니다. 아예 조건문이 성립 안되는거 아닌가요 ..?

예를 들어서 둘다 날짜가 (11~31)일 인 경우에는 if문 때문에 (오늘연도-출생연도)로 출력될텐데..

계산식에 보여준것과 다르지 않은가요 ..?

 

그럴일은 없겠지만, 혹시나 책이 틀렸다면 계산식과 맞는 코드 부분 댓글 달아주시면 감사하겠습니다.

 

 

계산식

출생월 출생일 만 나이 계산식
1~2월   만 나이 = 오늘 연도 - 출생 연도
3월

1~10일

11~31일

만 나이 = 오늘 연도 - 출생 연도

만 나이 = 오늘 연도 - 출생 연도 - 1  

4~12월   만 나이 = 오늘 연도 - 출생 연도 - 1

 

<?php /* 출생년, 출생월, 출생일에 따라 만 나이 계산하기 */

$now_year=2019;

$now_month=3;

$now_day=10;

$birth_year=1990;

$birth_month=3;

$birth_day=30;

 

if($birth_month < $now_month)

   $age= $now_year - $birth_year;

 

   elseif($birth_month == $now_month)

   {

   if($birth_day <= $now_day)

      $age= $now_year - $birth_year;

   else 

      $age= $now_year - $birth_year-1;

   }

else

   $age= $now_year - $birth_year-1;

 

echo "오늘 날짜 : $now_year 년 $now_month 월 $now_day 일<br>";

echo "출생년월일 : $birth_year 년 $birth_month 월 $birth_day 일생<br>";

echo "만 나이 : $age 세";

?>

 

이 질문에 댓글 쓰기 :

답변 1

반대로 계산을 했네요.

생일이 아직 안지나면 -1 을 하고 

지났으면 그대로 빼면 됩니다.


if($birth_month < $now_month)
   $age= $now_year - $birth_year-1;
   elseif($birth_month == $now_month)
   {
   if($birth_day < $now_day)
      $age= $now_year - $birth_year-1;
   else
      $age= $now_year - $birth_year;
   }
else
   $age= $now_year - $birth_year;
답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 17,127
© SIRSOFT
현재 페이지 제일 처음으로