PHP: strptime() function


The strptime() function parses a time/date generated with strftime() and returns an array.


(PHP 4 and above)


strftime(str_date, format ) 


Name Description Required /
format Day :
%a - Short day abbreviation ( Sun through Sat)
%A - A full day name ( Sunday through Saturday)
%d - Numeric day of the month with leading zeros (01 to 31)
%e - Day of the month without leading zeros (1 to 31 )
%j - Day of the year, 3 digits with leading zeros (001 to 366)
%u - ISO-8601 numeric day of the week 1 (for Monday) though 7 (for Sunday)
%w - Numeric day of the week 0 (for Sunday) through 6 (for Saturday)

Week :
%U - Week number of a specified year, starting with the first Sunday as the first week 13 (for the 13th full week of the year)
%V - ISO-8601:1988 week number of a specific year, starting the first week of the year with at least 4 weekdays. Example : Monday being the start of the week 01 through 53
%W - Numeric representation of week number of year. Week starting from Monday

Month :
%b - Abbreviated month name (Jan through Dec)
%B - Full month name (January through December)
%h - Abbreviated month name (Jan through Dec)
%m - Numeric representation of the month in two digits 01 (for January) through 12 (for December)

Year :
%C - Numeric representation of the century in two digits
%g - Two digit representation of the year going by ISO-8601:1988 standards
%G - The full four-digit representation of the year
%y - Numeric representation of the year in two digits (Example: 99 for1999)
%Y - Four digit representation for the year Example: 2011

Time :

%H - 24-hour format of an hour (00 through 23)
%I - 12-hour format of an hour (01 through 12 )
%l - 12-hour format of an hour without leading zeros (1 to 12)
%M -Minutes with leading zeros (00 through 59)
%p - UPPER-CASE 'AM' or 'PM'
%P - lower-case 'am' or 'pm'
%r - Same as "%I:%M:%S %p"
%R - Same as "%H:%M"
%S - Seconds with leading zero (00 through 59)
%T - Same as "%H:%M:%S"
%X - Represent times without the date
%z - The time zone offset from UTC or the abbreviation
%Z - The time zone offset or abbreviation if option NOT given by %z

Time and Date Stamps :
%c - A specific date and time stamp based on local
%D - Same as "%m/%d/%y"
%F - Same as "%Y-%m-%d" (usually used in database datestamps)
%s - Unix Epoch Time timestamp
%x - A date representation based on locale date, without the time

Miscellaneous :

%n - A newline character ("\n")
%t - A Tab character ("\t")
%% - A literal percentage character ("%")
optional string
timestamp An integer indicates the unixtimestamp. If a timestamp is not supplied, it gives the current local time. optional integer

Return value:

An array, or FALSE on failure.

The following list describes the elements of the returned array.
tm_sec - seconds.
tm_min - minutes.
tm_hour - hour.
tm_mday - the day of the month.
tm_mon - the month of the year, starting with 0 for January.
tm_year - Years since 1900.
tm_wday - Day of the week.
tm_yday - Day of the year.
unparsed - the date part which was not recognized using the specified format.

Value Type: Array


$format= '%d/%m/%Y %H:%M:%S';
$strf1 = strftime($format);
echo "$strf1";
print_r(strptime($strf1, $format));

Sample Output:

19/01/2011 05:48:50

Note : Since the time/date is not static, therefore the output may vary.

View the example in the browser

See also

PHP Function Reference

Previous: strftime
Next: strtotime

PHP: Tips of the Day

PHP: Anonymous recursive PHP functions

In order for it to work, you need to pass $factorial as a reference

$factorial = function( $n ) use ( &$factorial ) {
    if( $n == 1 ) return 1;
    return $factorial( $n - 1 ) * $n;
print $factorial( 5 );

Ref : https://bit.ly/38dj7jm