The date_create_from_format() is an inbuilt function in php which is used to parses a time string according to a specified format. This function accepts three parameters and returns new DateTime in success or false on failure.
Syntax:
Procedural style
date_create_from_format ( $format, $time, $timezone )
Object oriented style
DateTime::createFromFormat ( $format, $time, $timezone )
Parameters: This function accepts three parameters as mentioned above and described below:
- $format: It is a required parameters which is used to specify the date format. The following parameters string are used in format.
- Day:
- d and j: Day of the month, 2 digits with or without leading zeros.
- D and l: A textual representation of a day.
- S: English ordinal suffix for the day of the month, 2 characters. It’s ignored while processing.
- z: The day of the year (starting from 0)
- Month:
- F and M: A textual representation of a month, such as January or Sept
- m and n: Numeric representation of a month, with or without leading zeros
- Year:
- Y: A full numeric representation of a year, 4 digits
- y: A two digit representation of a year (which is assumed to be in the range 1970-2069, inclusive)
- Time:
- a and A: Ante meridiem and Post meridiem
- g and h: 12-hour format of an hour with or without leading zero
- G and H: 24-hour format of an hour with or without leading zeros
- i: Minutes with leading zeros
- s: Seconds, with leading zeros
- u: Microseconds (up to six digits)
- Timezone:
- e, O, P and T: Timezone identifier, or difference to UTC in hours, or difference to UTC with colon between hours and minutes, or timezone abbreviation
- Full Date/Time:
- U: Seconds since the Unix Epoch (January 1 1970 00:00:00 GMT)
- Whitespace and Separators:
- (space): One space or one tab
- #: One of the following separation symbol: ;, :, /, .,,, -, ( or )
- ;, :, /, .,,, -, ( or ): The specified character.
- ?: A random byte
- *: Random bytes until the next separator or digit
- !: Resets all fields (year, month, day, hour, minute, second, fraction and timezone information) to the Unix Epoch
- |: Resets all fields (year, month, day, hour, minute, second, fraction and timezone information) to the Unix Epoch if they have not been parsed yet
- +: If this format specifier is present, trailing data in the string will not cause an error, but a warning instead
- Day:
- $time: This parameter is used as string representing the time.
- $timezone: This parameter is used as DateTimeZone object representing the desired time zone.
Return Value: This function returns a new DateTime instance on success or FALSE on failure.
Below programs illustrate the date_create_from_format() function in PHP.
Program 1:
<?php // Declare a date in given format $date = date_create_from_format( 'D-M-Y' , 'monday-Feb-2018' ); // Output date in given format echo date_format( $date , 'y-n-j' ); ?> |
18-2-5
Program 2:
<?php // Declare a date in given format $date = DateTime::createFromFormat( 'D-M-Y' , 'monday-Feb-2018' ); // Output date in given format echo $date ->format( 'Y-m-d' ); ?> |
2018-02-05
Reference: http://php.net/manual/en/datetime.createfromformat.php