PHP에서 gmdate () 함수는 그리니치 표준 시간 (GMT)을 기반으로 날짜 및 시간 문자열을 포맷하는 데 사용됩니다. 날짜 () 함수와 달리 gmdate ()는 서버 현지 시간이 아닌 gmt 시간을 반환합니다. 시간 영역에서 날짜 시간 요구 사항을 처리하는 데 적합합니다.
GMDATE () 로 날짜를 형식화 할 때는 종종 "제로 보상"문제 (예 : 시간, 분, 초, 몇 달 및 날짜)와 같은 경우가 종종 있습니다. 숫자가 10 미만인 경우 0을 채워야합니까? 실제로 gmdate ()는 포맷 문자를 제공하여이를 자동으로 처리합니다.
D —— 보상이 0으로 01 에서 31 까지
J —— 보상이없는 경우, 범위는 1 ~ 31 입니다.
M —— 보상이 0 인 달을 나타냅니다 .
n —— 보상이없는 달, 1 에서 12 까지
H —— 보상이없는 24 시간 시스템, 범위는 00 ~ 23 입니다.
G —— 24 시간 시스템은 보상이없는 24 시간 시스템입니다. 범위는 0 ~ 23 입니다.
I —— 분, 보상이 0 인 범위는 00 ~ 59 입니다.
S- 보상이 0 인 초, 범위는 00 ~ 59 입니다.
따라서 0을 자동으로 채우려는 한 D , M , H , I , S 와 같은 채우기 0과 함께 형식 문자를 사용하십시오. 0을 구성하지 않으려면 해당 문자를 제로 보완없이 사용하십시오.
<?php
// 현재 타임 스탬프
$timestamp = time();
// 제로 보상 형식의 날짜 및 시간
echo gmdate('Y-m-d H:i:s', $timestamp);
// 출력 예제: 2025-05-24 14:05:09
// 제로 보충이없는 날짜와 시간
echo gmdate('Y-n-j G:i:s', $timestamp);
// 출력 예제: 2025-5-24 14:5:9
?>
위의 코드는 gmdate ()가 형식 문자 자체에 따라 0을 채울지 자동으로 결정하며 추가 처리가 필요하지 않음을 보여줍니다.
일부 초보자는 조건부 명세서를 사용하여 숫자의 크기를 결정한 다음 다음과 같은 0을 보충하려고 시도 할 수 있습니다.
<?php
$hour = gmdate('G');
if ($hour < 10) {
$hour = '0' . $hour;
}
echo $hour;
?>
이 유형의 글은 번거롭고 오류가 발생하기 쉽습니다. 형식 문자 h를 사용하면 0을 자동으로 보충 할 수 있기 때문에 완전히 불필요합니다.
gmdate ()를 사용하여 날짜를 형식화 할 때는 수동 작동없이 제로로 형식 문자로 0을 자동으로 채울 수 있습니다.
예를 들어, d , m , h , i , s는 자동으로 0을 구성합니다.
j , n , g 및 기타 형식 문자를 제로 보상없이 사용하십시오.
더 많은 형식의 문자 및 gmdate () 사용에 대해서는 공식 문서를 참조 할 수 있습니다.