English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP 기초 강의

PHP 고급 강의

PHP & MySQL

PHP 참조 매뉴얼

PHP date_create_immutable() 함수 사용법 및 예제

PHP 날짜 & 시간 함수 매뉴얼

date_create_immutable() 함수는 새로운 DateTimeImmutable 객체를 반환합니다

정의 및 사용법

date_create_immutable()는 DateTimeImmutable::__construct()의 별명입니다. 이 함수는 날짜를 받아들입니다/시간 문자열과 시간대(선택 사항)를 파라미터로 사용하여 DateTimeImmutable 객체를 생성합니다.
DateTime 객체와 달리, 이 객체는 어떠한 수정도 허용하지 않으며, 변경이 발생하면 새로운 객체를 생성하여 반환합니다. 기본적으로, 이 함수는 현재 날짜를 생성합니다./시간 객체

문법

date_create_immutable([$date_time, $timezone]);

파라미터

순번파라미터 및 설명
1

date_time (선택 사항)

불변한 DateTime 객체를 생성해야 하는 날짜입니다/지원되는 형식을 사용한 시간 문자열。

2

timezone (선택 사항)

이는 주어진 시간의 시간대를 나타냅니다.

반환 값

PHP date_create_immutable() 함수는 생성된 DateTimeImmutable 객체를 반환합니다.

PHP 버전

이 함수는 원래 PHP 버전5.5.0에서 도입되었으며, 모든 더 높은 버전에서 사용할 수 있습니다.

온라인 예제

아래 예제는date_create_immutable()함수 사용법-

<?php
   $date_string = "2019-08-15 9:25:45";
   $immutable = date_create_immutable($date_string);   
   print_r($immutable);
?>
테스트 해보기‹/›

출력 결과

DateTimeImmutable Object
(
    [date] => 2019-08-15 09:25:45.000000
    [timezone_type] => 3
    [timezone] => UTC
)

온라인 예제

시간대 설정을 포함한date_create_immutable()예제-

<?php
   $date_string = "2019-08-15 9:25:45";
   $tz = new DateTimeZone('Indian/Mahe');
   $immutable = date_create_immutable($date_string, $tz);   
   print_r($immutable);   
   print( date_format($immutable,'Y-m-d H:i:s')); 
?>
테스트 해보기‹/›

출력 결과

DateTimeImmutable Object
(
    [date] => 2019-08-15 09:25:45.000000
    [timezone_type] => 3
    [timezone] => Indian/Mahe
)
2019-08-15 09:25:45

온라인 예제

아래 예제에서, 우리는 불변한 날짜를 생성하고, 정상 날짜 객체에 간격을 추가하여 결과 값을 표시했습니다. 불변한 DateTime 객체는 변경 시 새로운 객체를 생성하고 반환하므로, 변경 전 후 모두 변경됩니다-

<?php
   print("불변 날짜: "."\n");
   $date1 = date_create_immutable('1986-09-11');
   $date2 = $date1->add(new DateInterval('P15DP12MP9YT24H'));
   print("원본 객체 값: ".$date1->format('Y-m-d')."\n");
   print("변경 후: ".$date2->format('Y-m-d')."\n");
   print("정상 날짜: "."\n");
   $date3 = date_create('1986-09-11');
   $date4 = $date3->add(new DateInterval('P15DP12MP9YT24H'));
   print("원본 객체 값: ".$date3->format('Y-m-d')."\n");
   print("변경 후: ".$date4->format('Y-m-d')."\n");
?>
테스트 해보기‹/›

출력 결과

불변 날짜: 
원본 객체 값: 1986-09-11
변경 후: 1996-09-27
정상 날짜: 
원본 객체 값: 1996-09-27
변경 후: 1996-09-27