개발
백엔드
PHP 시간 차 계산
409 views as of March 4, 2019.
⚠ 이 글은 2년 이상 지난 이야기에요. 읽으실때 참고!
현재시간을 기준으로 서비스의 제공 유무를 판단할 때 구해야 하는 시간 차를 계산하는 코드입니다.
timestamp값을 이용해 시간차를 반환할 수 있도록 PHP의 intval 메소드를 활용해 만들어봅시다.
반환된 timestamp 값의 크기는 흔히 서비스에서 이용해야되는 초/분/시간/일 단위가 아니므로 필요에 따라 원하는 시간 규격으로 바꿔줘야 해요.
<?php
/**
* 인수로 입력된 날짜와 현재날짜 사이의 시간차를 계산해 기준시간이내면 TRUE를, 아니면 FALSE를 반환합니다.
* 두 번째 인수로 시간단위의 기준시간을 입력할 수 있습니다. 기본값은 1주일(=168시간) 입니다.
* @param $date
* @param int $limit
* @return bool
*/
function is_in_time($date, $limit = 168) {
$ticktock = intval((strtotime('now') - strtotime($date)) / 3600);
if ($ticktock < $limit)
$inWeek = TRUE;
else
$inWeek = FALSE;
return $inWeek;
}
Copy
$ticktock이 내가 얻는 시간차 입니다. intval 파라미터 연산식 중 가장 마지막 나눠지는 숫자가 다룰 시간 규격 단위를 계산하는 기준입니다.
위의 메소드에서는 전 '시간'단위로 데이터를 구분하기위해서 3600으로 나누었습니다.
'분'단위면 60으로 나누고 '초'단위면 굳이 나눌필요가 없겟지요!
반환되는 값이나 후처리 과정은 자신이 필요한대로 로직 수정을 진행하면 될 것 같아요. 저같은 경우에는 일정 시간을 벗어나는 시간 차일 경우 논리값 반환형태로 시간 차를 이용했습니다.
#php
0
개의 댓글
백엔드 콜렉션의 다른 글
개발 카테고리의 다른 글
03/05/2019
PHP 공인 IP 주소 얻어오기
PHP 상에서 IP 주소를 얻어오는 방법은 생각보다 참으로 많습니다.쉽게 접근할 수 있는것이 $_SERVER['REMOTE_ADDR'] 이긴 합니...
03/04/2019
PHP 배열, 다중배열속의 값 검사
PHP는 배열안의 데이터를 검사하는 메소드가 언어에서 지원해주는것이 있습니다. 검사할 데이터와 대상 배열을 파라미터로 전달...
12/31/2018
Ajax를 이용해 Post 요청하는 방법들
jQuery 웹 프로그래밍을 하다보면 Ajax를 이용한 비동기 로딩을 하는 경우가 발생합니다. 비동기 로딩은 정말 리액티브한 웹을...