날짜 표시 관련해서 질문 드려요.

날짜 표시 관련해서 질문 드려요.

QA

날짜 표시 관련해서 질문 드려요.

본문

function passing_time($datetime) {
    $time_lag = time() - strtotime($datetime);
    
    if($time_lag < 60) {
        $posting_time = "방금";
    } elseif($time_lag >= 60 and $time_lag < 3600) {
        $posting_time = floor($time_lag/60)."분 전";
    } elseif($time_lag >= 3600 and $time_lag < 86400) {
        $posting_time = floor($time_lag/3600)."시간 전";
    } elseif($time_lag >= 86400 and $time_lag < 2419200) {
        $posting_time = floor($time_lag/86400)."일 전";
    } else {
        $posting_time = date("y-m-d", strtotime($datetime));
    } 
    
    return $posting_time;
}

 

이렇게 해서 '27일전' 까지 표시되는건 알겠습니다.

 

근데 1개월 전, 3개월 전, 4년 전...

 

이렇게 몇개월,몇년전으로 표시할려면 어떻게 해야 하나요?

 

2419200을 계산해서 할려고 하니 31일도 있고 30일도 있으니 답이 없네요.

 

금일 날짜로 부터 어떻게 계산을 하는 공식이 있을 듯 한데 검색해도 모르겠습니다.

 

혹시 리스트 게시물 날짜를 몇달전 몇년전으로 표시하는 방법 아시면 부탁 좀 드려요 ㅠㅜ

 

 

 

이 질문에 댓글 쓰기 :

답변 1

PHP를 이용해서 두날짜의 차이를 구하는건 상당히 복잡해집니다.

 

그러나 방법은 있습니다.

 

https://code.i-harness.com/ko-kr/q/a53d8

 

를 참고해보시고

 

더 간단한 해결책은 MySql을 이용하는겁니다.

datediff 의 좋은예

 

http://extbrain.tistory.com/entry/MySQL-%EB%82%A0%EC%A7%9C-%EC%B0%A8%EC%9D%B4-%EA%B0%80%EC%A0%B8%EC%98%A4%EA%B8%B0-DATEDIFF-TIMESTAMPDIFF-%ED%95%A8%EC%88%98

답변을 작성하시기 전에 로그인 해주세요.
전체 18
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT