time() : 타임스탬프 시간. 1970년 1월 1일 0시 0분 0초부터 세기 시작한 시간을 의미
코드를 실행한 시간을 기준으로 출력된다.
<?php
echo time();
?>
Result
1583561822
위의 시간대로부터 1583561822초가 지났음을 알 수 있다.
date() : 타임스탬프의 값을 몇년 몇월 며칠 형태로 바꾸어주는 함수
구성 |
date(시간포맷, 타임스탬프값) |
시간 포맷에는 알고 싶은 시간의 단위값(연도 또는 월일 등)을 입력하고,
타임스탬프 값에는 알고 싶은 타임스탬프 시간 값을 입력한다.
시간 포맷에는 다양한 종류가 있다.
문자 | 의미 | 예시 | 문자 | 의미 | 예시 |
Y | 4자리 연도 | 2020 (년) | w | 일(0)~토(6) | 1 - 월요일 |
m | 0 + n월 | 04 (월) | M | 3자리 월 | Jan |
d | 0 + n일 | 07 (일) | z | 올 해의 며칠 째 | 245 (일 째) |
H | 0 + n시 | 08 (시) | y | 2자리 연도 | 20 (20년) |
i | 0 + n분 | 05 (분) | F | 전체 글자 월 | January |
s | 0 + n초 | 01 (초) | n | 0 없이 월 | 4 (월) |
A | 오전, 오후 대문자 | AM, PM | j | 0 없이 일 | 7 (일) |
위의 표 내용을 참고하여 현재의 시간을 표시해보자.
<?php
echo "현재 시간은 ".date("Y년 m월 d일 H시 i분 s초",time())."이다.";
?>
Result
현재 시간은 2020년 03월 07일 15시 32분 50초이다.
mktime() : 특정 시간을 타임스탬프 시간으로 표시해주는 함수
위의 date() 함수와 다르게 mktime() 함수는 특정 시간을 타임스탬프로 만들어준다.
구성 |
mktime(시, 분, 초, 월, 일, 년) |
이 함수를 가지고 특정 시간에만 특정 명령어가 작동하도록 해보자.
<?php
//시작 시간 설정 2020년 3월 7일 15시 45분 0초
$startTime = mktime(15, 45, 0, 3, 7, 2020);
//종료 시간 설정 - 2020년 3월 7일 15시 46분 0초
$endTime = mktime(15, 46, 0, 3, 7, 2020);
$nowTime = time();
if($nowTime >= $startTime && $nowTime <= $endTime) {
echo "이벤트 참여 가능 시간입니다.";
} else {
echo "이벤트 시작 전이거나 종료되었습니다.";
}
?>
Result 3시 45분에 실행 시
이벤트 참여 가능 시간입니다.
Result 3시 46분 1초가 지난 시점에 실행 시
이벤트 시작 전이거나 종료되었습니다.
728x90
'Backend > php' 카테고리의 다른 글
[PHP] 함수 만들기, 호출하기, 값 반환하기 (0) | 2020.03.10 |
---|---|
[PHP] 시간 함수 (2) - getdate(), checkdate(), microtime() (0) | 2020.03.07 |
[PHP] date.timezone 지역 설정하기 (Asia/Seoul) (0) | 2020.03.04 |
[PHP] 함수 isset(), empty() (0) | 2020.03.04 |
[PHP] 문자열 함수 (2) - strlen(), substr(), str_replace() (0) | 2020.03.03 |