PHP date_create() Function

Quick summary: The PHP date_create() function creates a DateTime object.

PHP date_create() Syntax

date_create(string $datetime = "now", ?DateTimeZone $timezone = null): DateTime|false
PHP

PHP date_create() Basic examples

$dt = date_create('2026-02-08');
var_dump($dt instanceof DateTime);
PHP
Output:
bool(true)

Creates a DateTime object from a string.

PHP date_create() Real-world usage

$dt = date_create('now', new DateTimeZone('UTC'));
echo $dt->format('c');
PHP
Output:
2026-02-08T10:34:00+00:00

Creates timezone-aware DateTime objects.

PHP date_create() Edge cases

var_dump(date_create('invalid'));
PHP
Output:
bool(false)

Returns false for invalid date strings.

PHP date_create() Common mistakes

Not checking for failure

date_create can return false.

Incorrect
date_create($input)->format('Y-m-d');
Correct
$dt = date_create($input); if ($dt) echo $dt->format('Y-m-d');

Validate DateTime creation.

PHP date_create() Frequently Asked Questions

What does date_create() do?

Creates a DateTime object.

Alias of DateTime?

Yes.

Use case?

Working with dates in OOP style.

Returns object?

Yes.

Handles timezones?

Yes.

Common mistake?

Not checking for false.

Performance?

Good.

Alternative?

new DateTime().

Supports relative formats?

Yes.

Safe?

Yes.

Best practice?

Use DateTime API.

Mutable?

Yes.

PHP date_create() Related PHP Functions