
date_create 함수는 날짜를 생성할 때, 날짜를 수정할 수 있는 기능을 제공합니다.
이러한 이유는 date_create 함수가 날짜를 생성한 후, 날짜를 수정할 수 있는 객체를 반환하기 때문입니다.
반면에 date_create_immutable 함수는 날짜를 생성한 후, 날짜를 수정할 수 없는 객체를 반환합니다.
이러한 특징으로 인해 date_create_immutable 함수를 사용하면 날짜의 불변성을 보장할 수 있습니다.
예를 들어, 날짜를 생성한 후, 날짜를 수정하는 코드를 작성하는 경우, date_create 함수를 사용하면 날짜를 수정할 수 있습니다.
#hostingforum.kr
php
$date = date_create('2022-01-01');
date_modify($date, '+1 day');
echo date_format($date, 'Y-m-d'); // 2022-01-02
반면에 date_create_immutable 함수를 사용하면 날짜를 수정할 수 없습니다.
#hostingforum.kr
php
$date = date_create_immutable('2022-01-01');
try {
date_modify($date, '+1 day');
} catch (Exception $e) {
echo '날짜를 수정할 수 없습니다.';
}
echo date_format($date, 'Y-m-d'); // 2022-01-01
date_create_immutable 함수를 사용하면 날짜의 불변성을 보장할 수 있습니다.
또한, date_create_immutable 함수는 날짜를 생성한 후, 날짜를 수정할 수 없는 객체를 반환하기 때문에, 날짜를 수정하는 코드를 작성하는 경우, 에러를 발생시키지 않습니다.
이러한 특징으로 인해 date_create_immutable 함수를 사용하면 날짜의 불변성을 보장하고, 날짜를 수정하는 코드를 작성하는 경우, 에러를 발생시키지 않습니다.
2025-07-22 00:28