DateTime 클래스의 createFromFormat 메서드

DateTime 클래스의 정적 메서드 createFromFormat는 지정된 형식에 해당하는 문자열에서 DateTime 객체를 생성할 수 있게 해줍니다. 세 가지 매개변수를 받습니다: 날짜 형식, 날짜 문자열, 그리고 선택적인 DateTimeZone 객체입니다. DateTime 객체 또는 오류 시 false를 반환합니다.

구문

phpDateTime::createFromFormat(
  string $format,
  string $datetime,
  DateTimeZone $timezone = null
): DateTime|false

예시

일-월-연도 형식의 문자열에서 날짜를 생성해 보겠습니다:

php<?php
  $date = DateTime::createFromFormat('d-m-Y', '15-07-2023');
  echo $date->format('Y-m-d');
?>

코드 실행 결과:

php'2023-07-15'

예시

비표준 형식의 문자열에서 날짜와 시간을 생성해 보겠습니다:

php<?php
  $date = DateTime::createFromFormat('Y/m/d H:i', '2023/07/15 14:30');
  echo $date->format('d.m.Y H:i:s');
?>

코드 실행 결과:

php'15.07.2023 14:30:00'

예시

시간대를 지정하여 날짜를 생성해 보겠습니다:

php<?php
  $timezone = new DateTimeZone('Europe/Moscow');
  $date = DateTime::createFromFormat('Y-m-d H:i:s', '2023-07-15 14:30:00', $timezone);
  echo $date->format('Y-m-d H:i:s e');
?>

코드 실행 결과:

php'2023-07-15 14:30:00 Europe/Moscow'

함께 보기

  • 날짜와 시간을 형식화하는
    format 메서드
  • 날짜의 텍스트 설명을 타임스탬프로 변환하는
    strtotime 함수