작성시간 대신 몇 분, 몇 시간, 몇 일 전인지 알려주게 하는 방법 > 개발자팁

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.

작성시간 대신 몇 분, 몇 시간, 몇 일 전인지 알려주게 하는 방법 정보

PHP 작성시간 대신 몇 분, 몇 시간, 몇 일 전인지 알려주게 하는 방법

본문

안녕하세요.

이 기능이 필요해서 며칠전에 만들어봤는데 팁게시판에 공유좀 해보려고요~

 

먼저 /lib/common.lib.php 입니다.

318번 째 줄 아래의 그누보드 관련 함수 모음 아래에다

(중략)


**  그누보드 관련 함수 모음
**
*************************************************************************/​
 // 시간 계산 함수 추가
function time_sec($time){
 $mktime = mktime($time['tm_hour'], $time['tm_min'], $time['tm_sec'], ($time['tm_mon']+1), $time['tm_mday'], ($time['tm_year']+1900));
return $mktime;
}

를 추가해줍니다. 

 

그 다음에 조금 내려와서 


$list['comment_cnt'] = '';
$list['comment_cnt'] = "<span class=\"cnt_cmt\">".$list['wr_comment']."</span>";
$list['comment_cnt'] = "<span class=\"cnt_cmt\">".$list['wr_comment']."</span>";​

문구 아래에


// 시간 계산(8.11 추가)
 $today = strptime(G5_TIME_YMDHIS, "%Y-%m-%d %H:%M:%S");
 $wr_date = strptime($list['wr_datetime'], "%Y-%m-%d %H:%M:%S");
 $list['diff_time'] = time_sec($today) - time_sec($wr_date);
 
 if($list['diff_time']<60){
 $list['diff_time'] = "방금"; // 60초 미만은 방금으로 표시
 }else if($list['diff_time']>=60&&$list['diff_time']<3600){
 $list['diff_time'] = floor($list['diff_time']/60)."분"; // 1시간 미만은 분으로 표시
 }else if($list['diff_time']>=3600&&$list['diff_time']<86400){
 $list['diff_time'] = floor($list['diff_time']/3600)."시간"; //24시간 미만은 시간으로 표시
 }else if($list['diff_time']>=86400){
 $list['diff_time'] = floor($list['diff_time']/86400)."일"; //그 이상은 일로 표시
 }​

를 추가해줍니다.

 

그 다음 최근게시물 스킨폴더(/skin/latest/스킨명/)의 latest.skin.php나 게시판 스킨폴더(/skin/board/스킨명/)의 list.skin.php의


<?php echo $list['datetime2'] ?>

부분을


<?php echo $list['diff_time'] ?>

로 수정해주시면 게시한 시간 대신 "방금/몇 분/몇 시간/몇 일" 전으로 표시되게 됩니다.

추천
0

댓글 0개

전체 5,352
개발자팁 내용 검색

회원로그인

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