PHP 날짜() 및 시간 함수: 현재 타임스탬프를 얻는 방법?

⚡ 스마트 요약

PHP의 `date()` 함수는 타임스탬프를 사람이 읽기 쉬운 날짜와 시간 형식으로 변환합니다. 이 가이드에서는 날짜 구문, 유닉스 타임스탬프, 시간대 목록 보기 및 설정 방법, 타임스탬프 생성 함수인 `mktime`, 그리고 시간, 일, 월, 연도 형식 문자에 대한 전체 참조를 설명합니다.

  • 📅 date() 함수의 기능: 날짜 함수는 타임스탬프를 연도, 월, 일을 나타내는 Y, m, d와 같은 문자를 사용하여 형식화된 문자열로 변환합니다.
  • ⏱️ 유닉스 타임스탬프: 타임스탬프는 1970년 1월 1일 GMT 이후 경과된 초 수를 나타내며, time() 함수는 현재 값을 반환합니다.
  • 🌍 시간대: date_default_timezone_set 함수는 활성 시간대를 변경하고, DateTimeZone::listIdentifiers 함수는 지원되는 모든 시간대를 나열합니다.
  • 🔧 mktime: mktime 함수는 지정된 시, 분, 초, 월, 일, 연도를 사용하여 타임스탬프를 생성합니다.
  • 🔤 형식 문자: 각 문자를 사용하여 출력 형식을 제어할 수 있습니다. 예를 들어 H는 24시간제, l은 요일 이름, F는 월 이름을 나타냅니다.
  • 📐 참조 표 : 그룹화된 표에는 시간, 일, 월, 연도 형식 문자가 나열되어 있으며 각 형식에 대한 실행 가능한 예제가 제공됩니다.
  • 🤖 AI 지원: AI 도구는 날짜 형식 지정 및 차이 코드를 생성하고 혼란스러운 시간대 오류를 해결하는 데 도움을 줄 수 있습니다.

PHP 날짜() 함수

PHP 날짜() 함수

PHP의 `date` 함수는 날짜 데이터 유형을 다루는 작업을 간소화하는 내장 함수입니다. 이 함수는 날짜 또는 시간을 사람이 읽기 쉬운 형식으로 변환하는 데 사용됩니다. 예를 들어, 기사 발행일을 표시하거나 데이터베이스의 데이터가 마지막으로 업데이트된 시간을 기록하는 데 활용할 수 있습니다.

PHP 날짜 구문 및 예

PHP의 date() 함수는 다음과 같은 기본 구문을 가지고 있습니다.

<?php
date(format,[timestamp]);
?>

이리,

  • "date(…)" 함수는 현재 타임스탬프를 특정 형식으로 반환합니다. PHP 서버에.
  • "형식"은 출력물의 일반적인 형식을 나타냅니다. 예를 들면 다음과 같습니다.
    • PHP의 날짜 형식인 YYYY-MM-DD에서 "Ymd"는 날짜 형식입니다.
    • "Y"는 현재 연도를 표시합니다.
  • "[타임스탬프]"는 선택 사항입니다. 타임스탬프가 제공되지 않으면 PHP는 서버의 현재 날짜와 시간을 사용합니다.

현재 연도를 표시하는 기본적인 예를 살펴보겠습니다.

<?php

echo date("Y");

?>

출력:

2026

타임스탬프란 무엇입니까?

PHP에서 타임스탬프는 현재 시간과 1초 시점 사이의 간격을 초 단위로 나타낸 숫자 값입니다.st 1970년 1월 00시 00분 00초 그리니치 표준시(GMT).

time 함수에서 반환되는 값은 기본 시간대에 따라 달라집니다.

기본 시간대는 php.ini 파일에 설정되어 있습니다. 또한 date_default_timezone_set 함수를 사용하여 프로그램적으로 설정할 수도 있습니다.

아래 코드는 현재 타임스탬프를 표시합니다.

<?php

echo time();

?>

phptuts 폴더에 timestamp.php 파일을 저장했다고 가정하고, 해당 파일로 이동하세요. URL http://localhost/phptuts/timestamp.php

타임 스탬프

참고: 타임스탬프 값은 고정된 값이 아닙니다. 매초마다 변경됩니다.

사용 가능한 시간대 식별자 목록 가져오기

프로그래밍 방식으로 기본 시간대를 설정하는 방법을 살펴보기 전에, 지원되는 시간대 목록을 가져오는 방법을 먼저 살펴보겠습니다.

<?php

$timezone_identifiers = DateTimeZone::listIdentifiers();

foreach($timezone_identifiers as $key => $list){

echo $list . "<br/>";

}
?>

이리,

  • “$timezone_identifiers = DateTimeZone::listIdentifiers();”는 DateTimeZone 내장 클래스의 listIdentifiers 정적 메서드를 호출합니다. listIdentifiers 메서드는 식별자 목록을 반환하며, 이 목록은 변수 $timezone_identifiers에 할당됩니다.
  • “foreach{…}”는 배열을 순회하며 값을 출력합니다.

phptuts 폴더에 list_time_zones.php 파일을 저장했다고 가정하고, 해당 파일로 이동하세요. URL http://localhost/phptuts/list_time_zones.php

시간대 식별자

PHP는 프로그래밍 방식으로 시간대를 설정합니다.

date_default_timezone_set 함수를 사용하면 PHP 스크립트에서 기본 시간대를 설정할 수 있습니다.

설정된 시간대가 모든 날짜에 사용됩니다. PHP 함수 스크립트에서 다음과 같은 구문을 사용합니다.

<?php
date_default_timezone_set(string $timezone_identifier);
?>

이리,

  • “date_default_timezone_set()”은 기본 시간대를 설정하는 함수입니다.
  • "string $timezone_identifier"는 시간대 식별자입니다.

아래 스크립트는 php.ini에 설정된 기본 시간대에 따라 시간을 표시합니다. 그런 다음 기본 시간대를 Asia/Calcutta로 변경하고 시간을 다시 표시합니다.

<?php
echo "The time in " . date_default_timezone_get() . " is " . date("H:i:s");

date_default_timezone_set("Asia/Calcutta");
echo "The time in " . date_default_timezone_get() . " is " . date("H:i:s");
?>

set_time_zone.php 파일을 phptuts 폴더에 저장했다고 가정하고, 해당 파일로 이동하세요. URL http://localhost/phptuts/set_time_zone.php

PHP는 프로그래밍 방식으로 시간대를 설정합니다.

PHP MKtime 함수

mktime 함수는 타임스탬프를 유닉스 형식입니다.

구문은 다음과 같습니다.

<?php
mktime(hour, minute, second, month, day, year, is_dst);
?>

이리,

  • "mktime(...)"은 PHP 타임스탬프 만들기 함수입니다.
  • "hour"는 선택 사항이며, 시간을 나타내는 숫자입니다.
  • "분"은 선택 사항이며, 분 단위의 숫자입니다.
  • "second"는 선택 사항이며, 초 단위의 숫자를 나타냅니다.
  • "month"는 선택 사항이며, 월의 숫자를 나타냅니다.
  • "day"는 선택 사항이며, 날짜의 숫자를 나타냅니다.
  • "year"는 선택 사항이며, 연도를 나타내는 숫자입니다.
  • “is_dst”는 선택 사항이며, 일광 절약 시간제(DST) 적용 여부를 판단하는 데 사용됩니다. DST를 적용하면 1, 적용하지 않으면 0, 알 수 없으면 -1입니다.

이제 mktime 함수를 사용하여 2025년 10월 13일 날짜의 타임스탬프를 생성하는 예제를 살펴보겠습니다.

<?php

echo mktime(0,0,0,10,13,2025);

?>

이리,

  • "0,0,0"은 각각 시, 분, 초를 나타냅니다.
  • "10"은 해당 연도의 달입니다.
  • "13"은 해당 월의 날짜입니다.
  • “2025”는 올해입니다

출력:

1760328000

PHP 날짜 형식 참조

아래 표는 PHP 날짜 함수를 사용할 때 일반적으로 사용되는 형식 문자를 보여줍니다.

시간 매개변수

매개 변수 기술설명 예시
"아르 자형" 전체 날짜와 시간을 반환합니다.
<?php
echo date("r");
?>
“에”, “에이” 현재 시간이 오전인지 오후인지, 오전인지 오후인지를 각각 반환합니다.
<?php
echo date("a");
echo date("A");
?>
“g”, “G” 각각 선행 1(12~0), [23~XNUMX] 없이 시간을 반환합니다.
<?php
echo date("g");
echo date("G");
?>
“h”, “H” 시간을 반환할 때 앞에 0을 붙여서 [01~12], [00~23]으로 표시합니다.
<?php
echo date("h");
echo date("H");
?>
"이다" 앞에 00이 있는 분/초를 반환합니다[59 - XNUMX]
<?php
echo date("i");
echo date("s");
?>

요일 매개변수

매개 변수 기술설명 예시
"디" 앞에 01이 있는 달의 날짜를 반환합니다. [31 - XNUMX]
<?php
echo date("d");
?>
"제이" 앞에 1이 없는 날짜를 반환합니다[31~XNUMX].
<?php
echo date("j");
?>
"디" [일요일부터 토요일까지] 요일 이름의 첫 3글자를 반환합니다.
<?php
echo date("D");
?>
"엘" [일요일부터 토요일까지] 요일 이름을 반환합니다.
<?php
echo date("l");
?>
"와" 앞에 0이 붙지 않는 요일을 반환합니다[0~6]. 일요일은 0으로, 토요일은 6으로 표시됩니다.
<?php
echo date("w");
?>
"지" 선행 공백 없이 연도의 날짜를 반환합니다(0 - 365).
<?php
echo date("z");
?>

월 매개변수

매개 변수 기술설명 예시
"엠" 앞에 01이 붙은 월 번호를 반환합니다[12 - XNUMX]
<?php
echo date("m");
?>
"엔" 앞에 1이 없는 월 번호를 반환합니다. [12 - XNUMX]
<?php
echo date("n");
?>
"엠" 월 이름(Jan to Dec)의 처음 3자를 반환합니다.
<?php
echo date("M");
?>
"에프" 월 이름을 반환합니다[XNUMX월~XNUMX월]
<?php
echo date("F");
?>
"티" 한 달의 일수를 반환합니다[28~31]
<?php
echo date("t");
?>

연도 매개변수

매개 변수 기술설명 예시
"엘" 윤년이면 1을, 윤년이 아니면 0을 반환합니다.
<?php
echo date("L");
?>
"와이" 네 자리 연도 형식을 반환합니다.
<?php
echo date("Y");
?>
"와이" 두 자리 연도 형식(00~99)으로 반환합니다.
<?php
echo date("y");
?>

자주 묻는 질문

`date()`는 타임스탬프 형식을 지정하는 간단한 절차적 함수입니다. `DateTime` 클래스는 객체 지향적이며 산술 연산, 비교, 시간대 및 불변성을 지원하므로 대규모 애플리케이션에서 복잡한 날짜 로직을 처리하는 데 더 적합합니다.

'2025-10-13'이나 '다음'과 같은 형식을 읽어주는 strtotime() 함수를 사용하세요. Monday이 메서드는 유닉스 타임스탬프를 반환합니다. 알려진 형식의 엄격한 구문 분석을 위해서는 DateTime::createFromFormat 메서드가 더 안전합니다. 잘못된 입력에 대해 명확하게 오류를 발생시키기 때문입니다.

두 개의 DateTime 객체를 생성하고 diff() 메서드를 호출하면 DateInterval이 반환됩니다. 이 DateInterval을 사용하여 날짜 사이의 일수, 월수 또는 연도를 읽을 수 있습니다. 예를 들어, $start->diff($end)->days를 사용하면 두 날짜 사이의 총 일수를 구할 수 있습니다.

네. 입력 및 출력 형식을 설명해 주시면 AI가 날짜(date(), DateTime) 또는 시간 변환(strtotime) 코드를 생성할 수 있으며, 시간 간격을 추가하거나 시간대를 변환할 수도 있습니다. 윤년이나 월말과 같은 예외적인 경우를 고려하여 테스트해 보세요.

네. AI는 date_default_timezone_set 호출 누락, 서버와 디스플레이 시간대 불일치 또는 일광 절약 시간제 문제 등을 감지한 후, 명시적인 시간대를 사용하는 DateTime 함수를 권장하여 동작을 예측 가능하게 만들 수 있습니다.

이 게시물을 요약하면 다음과 같습니다.