PHP 타임스탬프와 날짜 형식 사용법
페이지 정보

본문
PHP 타임스탬프와 날짜 형식 사용법
PHP에서 time()과 date() 함수를 활용하여 현재 시각을 유닉스 타임스탬프로 구하고 원하는 날짜 형식으로 변환하는 방법을 안내합니다.
PHP에서 현재 시간 타임스탬프 구하기
PHP 스크립트에서 현재 시점의 유닉스 타임스탬프(Unix Timestamp)를 정수(int)로 획득하려면 time() 함수를 사용합니다. 유닉스 타임스탬프는 1970년 1월 1일 0시 0분 0초(UTC)부터 현재까지 경과된 시간을 '초(seconds)' 단위의 정수로 반환한 값입니다.
<?php
$tmstmp = time();
echo $tmstmp;
?>
주요 특징 및 확인 사항
time()함수는 매개변수가 없으며, 현재 스크립트에 설정된 기본 날짜 시간대(timezone)를 기준으로 현재 시점의 날짜와 시간을 초 단위 정수로 반환합니다.time()함수는date("U")와 동일한 값을 반환합니다.date()함수의 포맷 인자를 함께 활용하면 획득한 타임스탬프를 원하는 날짜 및 시간 형식으로 변환할 수 있습니다.
타임스탬프를 날짜 형식으로 변환하는 방법
PHP에서 타임스탬프 값을 사람이 읽기 쉬운 연-월-일, 시:분:초 형태의 날짜 형식으로 변환하려면 date() 함수를 사용합니다.
사용 방법
date() 함수의 첫 번째 매개변수에는 원하는 날짜 포맷 인자를 넣고, 두 번째 매개변수로 변환할 타임스탬프 정수값을 지정합니다.
<?php
$timestamp = 1234567890; // 예시 타임스탬프
echo date("Y-m-d H:i:s", $timestamp);
?>
- 포맷 인자 예시
Y-m-d H:i:s: 4자리 연도, 2자리 월, 2자리 일, 24시간 형식의 시·분·초로 변환합니다.- 그누보드 등 실무 환경에서는
date("y-m-d H:i", strtotime($view[wr_datetime]))와 같이 문자열 날짜를strtotime()등으로 타임스탬프 형태나 계산 가능한 값으로 거쳐 포맷을 조정할 때도 활용됩니다.
상황별 판단 및 행동 가이드
- 내 상황: PHP 환경에서 현재 시각의 타임스탬프를 정수로 구하거나 날짜 형식으로 변환하려는 경우
- 우선할 판단: 스크립트 실행 시점의 기준 시간대(
timezone) 확인 후time()함수로 초 단위 유닉스 타임스탬프 획득 - 다음 행동:
date()함수의 포맷 인자(예:Y-m-d H:i:s)에 타임스탬프 값을 대입하여 원하는 날짜·시간 문자열로 출력 및 검증
실전 FAQ
- Q. time() 함수로 얻은 타임스탬프를 특정 날짜 포맷으로 바꿀 때 결과가 실제 시간과 다르게 나옵니다.
- 예외 및 대안: 서버나 PHP 설정에 지정된 기본 시간대(
timezone)가 달라서 발생할 수 있습니다. 스크립트 상단에date_default_timezone_set('Asia/Seoul')등을 선언하여 시간대를 맞춘 후date()함수를 재실행해 보세요.
- 예외 및 대안: 서버나 PHP 설정에 지정된 기본 시간대(
- Q. 문자열 형태의 날짜(예: 그누보드 게시글 등록일)를 타임스탬프로 변환하여 계산하려면 어떻게 해야 하나요?
- 대안:
time()대신strtotime("2024-12-31")또는strtotime($view['wr_datetime'])함수를 사용하면 영어 기반 날짜 문자열이나 그누보드 날짜 데이터도 유닉스 타임스탬프 정수로 변환하여 비교·연산할 수 있습니다.
- 대안:
함께 보면 좋은 글
참고자료
기타 참고자료
- 이전글PHP getbrowser() 함수 사용을 위한 browscap 설정 및 오류 해결 가이드 26.09.28
- 다음글PHP 5.3 이상 환경에서 MSSQL 연동 드라이버 변경 및 설정 방법 26.09.28
댓글목록
등록된 댓글이 없습니다.