Thie date_create_immutable_from_format() function an alias of DateTimeImmutable::createFromFormat(). It accepts a time string and format string as parameters, parses the given time string in the specified format and returns a DateTimeImmutable object.
date_create_immutable_from_format($date, $time [,$timezone])
Sr.No | Parameter & Description |
---|---|
1 |
format(Mandatory) This is a string value representing the format in which you need to parse the given time string. |
2 |
time(Mandatory) This is a string value representing the time you need to parse. |
3 |
timezone(Optional) This is an object of DateTimeZone class representing the desired timezone. |
PHP date_create_immutable_from_format() function returns an DateTime object representing the parsed time. Incase of failure this function returns the boolean value false.
This function was first introduced in PHP Version 5.5.0 and, works with all the later versions.
Following example demonstrates the usage of the date_create_immutable_from_format() function −
<?php //Creating a DateTime object $date = "25-Mar-1989"; $format = "d-M-Y"; $res = date_create_immutable_from_format($format, $date); print("Date: ".date_format($res, "Y-m-d")); ?>
This will produce following result −
Date: 1989-03-25
Now, let us try passing the optional timezone parameter −
<?php //Creating a DateTime object $date = "25-Mar-1989"; $format = "d-M-Y"; $tz = new DateTimeZone('Indian/Mahe'); $res = date_create_immutable_from_format($format, $date, $tz); print date_format($res, "Y-m-d"); ?>
This will produce following result −
1989-03-25
Following example demonstrates date_create_immutable_from_format() with different formats −
<?php $res1 = date_create_immutable_from_format("j.n.Y", "25.8.2014"); print(date_format($res1, "Y-m-d")); print("\n"); $res2 = date_create_immutable_from_format('Y-d-m H:i:s', '2014-25-08 12:20:25'); print(date_format($res2, "Y-m-d H:i:s")); ?>
This will produce the following output −
2014-08-25 2014-08-25 12:20:25