[이윰] date 시간 형식으로 출력(~전) 올바르게 해결하기
페이지 정보
shadow2fox
1,116 2 2
2023.03.10 22:01:42
짧은주소
-
https://yadolee.com/tip/1037 주소복사
본문
📝 date 시간 형식으로 출력(~전) 올바르게 해결하기
템플릿언더바를 이용하는 과거의 이윰빌더와 순수 PHP를 지향하는 현재의 이윰빌더의 eyoom.class.php에 정의된 date_time 함수에 오류(시간 계산 방법이 맞지 않음)가 있어 그 문제를 바로 잡아 보도록 하자.
그누보드5/eyoom/classes/eyoom.class.php를 열어 public function date_time($format, $date) {를 검색한다.
수정 전
public function date_time($format, $date) {
$time = strtotime($date);
$time_gap = time() - $time;
if ($time_gap < 60) return $time_gap.'초전';
else if ($time_gap < 3600) return round($time_gap/60).'분전';
else if ($time_gap < 86400) {
$minute = round(($time_gap%3600)/60);
return round($time_gap/3600).'시간 '.$minute.'분전';
}
else return date($format,$time);
}
수정 후
public function date_time($format, $date) {
$time = strtotime($date);
$time_gap = time() - $time;
if ($time_gap < 60) return $time_gap.'초전';
else if ($time_gap < 3600) return floor($time_gap/60).'분전';
else if ($time_gap < 86400) {
$minute = floor(($time_gap%3600)/60);
return floor($time_gap/3600).'시간 '.$minute.'분전';
}
else return date($format,$time);
}
시간을 계산하기 위해 소수점 처리 방식을 반올림하는 함수 round()가 아니라 버리는 함수 floor()를 이용해야 한다.
추천인 2
레벨 149
경험치 3,346,407
Progress Bar 86.37%
- 가입일 : 2015-03-10 12:21:44
- 서명 : 인간에게 가장 큰 선물은
자기 자신에게 기회를 주는 것이다.
- 크리스 가드너, Chris Gardner -
- 자기소개 : There's never a shortcut to happiness.


댓글2
내사랑님의 댓글
하늘구장님의 댓글
축하합니다. 첫 댓글로 9경험치를 획득하였습니다.