PHP 에서 DateTime 의 일반적인 방법 을 정리 합 니 다.
예 를 들 어 대상 앞 에\\를 붙 이 는 것 은 네 임 스페이스 에서 네 임 스페이스 를 사용 하 는 클래스 입 니 다.네 임 스페이스 를 사용 하지 않 으 면 앞의\를 삭제 할 수 있 습 니 다.
1.현재 시간 출력
$datetime = new \DateTime;
print_r($datetime->format('Y-m-d H:i:s'));
2.주어진 시간 출력
$datetime = new \DateTime('2016-06-13');
print_r($datetime);
3.주어진 시간 에 따라 원 하 는 시간 으로 포맷
$datetime = \DateTime::createFromFormat('Ymd', '20160618');
print_r($datetime->format('Y-m-d'));
4.출력 유 닉 스 타임 스탬프 형식(방법 1 1990 년 이전 이면 마이너스 로 돌아 가 고 방법 2 는 false 로 돌아 갑 니 다)
// 1(php5.2):
$datetime = new \DateTime();
echo $datetime->format('U');exit;
// 2(php5.3)
$datetime = new \DateTime();
echo $datetime->getTimestamp();exit;
5.주어진 시간 스탬프 에 따라 주어진 시간 으로 포맷
$datetime = new \DateTime();
$datetime->setTimestamp(1465783744);
echo $datetime->format('Y-m-d H:i:s');
6.두 날짜 의 시간 비교,년 과 년 비교,달 과 달 비교...
$datetime1 = new \DateTime('2016-01-01 10:11:18');
$datetime2 = new \DateTime('2017-05-11 22:21:21');
$interval = $datetime1->diff($datetime2);
print_r($interval->format('%Y'));//% ,R (+), (-),a , y,m,d,h,i,s
7.생 성 길 이 는 며칠 전 입 니 다.DateInterval 구조 함수 의 매개 변 수 는 시간 간격 약속 을 나타 내 는 문자열 입 니 다.이 시간 간격 약속 은 알파벳 P 로 시작 하고 뒤에 정 수 를 따 르 며 마지막 으로 주기 식별 자 입 니 다.앞의 정 수 를 제한 합 니 다.유효 주기 식별 자 는 다음 과 같다.Y(년)M(월)D(일)W(주)H(시)M(분)S(초)간격 약정 에는 시간 도 있 고 날짜 도 있 을 수 있다.시간 이 있 으 면 날짜 와 시간 사이 에 알파벳 T 를 붙 여야 한다.예 를 들 어 간격 약정 P2D 는 이틀 간격 을 나타 내 고 간격 약정 P2DT5H2M 은 이틀 5 시간 2 분 간격 을 나타 낸다.
$datetime = new \DateTime();
$interval = new \DateInterval('P2DT5H');
// createFromDateString
//$interval = \DateInterval::createFromDateString('1 month');
// DateTime
$datetime->add($interval);
echo $datetime->format('Y-m-d H:i:s');
8.창설 며칠 전 시간
$datetime = new \DateTime();
$interval = new \DateInterval('P2DT5H');
$datetime->sub($interval);
echo $datetime->format('Y-m-d H:i:s');
//ps: modify , 30, 1 , 12
$datetime = new \DateTime('2014/12/31');
$datetime->modify( '-1 month' );
print_r($datetime);exit;
9.현재 DateTime 대상 의 시간 이 다른 날짜,전달 년,월,일 리 셋
$datetime = new \DateTime();
$datetime->setDate(2015, 2, 28);
echo $datetime->format('Y-m-d');exit;
10.현재 DateTime 대상 을 리 셋 하 는 시간,전달 시,분,초(선택 가능 한 인자)
$datetime = new \DateTime();
$datetime->setTime(20, 20, 24);
echo $datetime->format('Y-m-d H:i:s');exit;
11.포맷 하기 전에 시간 을 변경 하 는 시간 대
$timezone = new \DateTimeZone('Asia/Calcutta');
$datetime = new \DateTime();
$datetime->setTimezone($timezone);
print_r($datetime->format('Y-m-d H:i:s'));exit;
12.시간 대 되 돌리 기
$date = new \DateTime(null, new DateTimeZone('Asia/Shanghai'));
$tz = $date->getTimezone();
echo $tz->getName();
13.두 시간 대의 오프셋 값 을 계산한다.
$dateTimeZoneTaipei = new \DateTimeZone("Asia/Taipei");
$dateTimeZoneJapan = new \DateTimeZone("Asia/Tokyo");
$dateTimeTaipei = new \DateTime("now", $dateTimeZoneTaipei);
$dateTimeJapan = new \DateTime("now", $dateTimeZoneJapan);
$timeOffset = $dateTimeZoneJapan->getOffset($dateTimeTaipei);
print_r($timeOffset);exit;
14.복귀 시간 간격,얼마 동안
$interval = new \DateInterval('P2Y4DT6H8M');
echo $interval->format('%d days');
15.교체 출력 은 현재 날짜 의 며칠 전 날짜 입 니 다.DatePeriod 류 의 구조 방법 은 세 개의 인 자 를 받 아들 이 고 모두 DateTime 인 스 턴 스 를 제공 해 야 합 니 다.교체 시작 날짜 와 시간 을 나타 내 는 DateInterval 인 스 턴 스 는 다음 날짜 와 시간의 간격 을 나타 내 는 정수 입 니 다.교체 의 총 횟수 를 나타 내 는 네 번 째 인 자 는 선택 할 수 있 습 니 다.주기의 종료 날짜 와 시간 을 명시 적 으로 지정 하 는 데 사 용 됩 니 다.교체 할 때 시작 날짜 와 시간 을 제외 하려 면 구조 방법의 마지막 매개 변 수 를
DatePeriod::EXCLUDE_START_DATE
상수 로 설정 할 수 있 습 니 다.
$datetime = new \DateTime();
$interval = \DateInterval::createFromDateString('-1 day');
$period = new \DatePeriod($datetime, $interval, 3);
foreach ($period as $date) {
echo $date->format('Y-m-d'), PHP_EOL;
}
총결산이상 은 PHP 에서 DateTime 의 일반적인 방법 으로 정 리 된 모든 내용 입 니 다.내용 정리 가 비교적 완비 되 어 있어 서 여러분 들 이 일상적으로 PHP 를 사용 하 는 데 도움 이 될 것 이 라 고 믿 습 니 다.소장 이 편리 한 후에 찾 아 보 는 것 을 권장 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Laravel - 변환된 유효성 검사 규칙으로 API 요청 제공동적 콘텐츠를 위해 API를 통해 Laravel CMS에 연결하는 모바일 앱(또는 웹사이트) 구축을 고려하십시오. 이제 앱은 CMS에서 번역된 콘텐츠를 받을 것으로 예상되는 다국어 앱이 될 수 있습니다. 일반적으로 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.