PHP | Converting string to Date and DateTime

Converting the string to Date and DateTime uses several functions/methods like strtotime(), getDate(). We will see what these functions do.
strtotime() – This is basically a function which returns the number of seconds passed since Jan 1, 1970, just like a linux machine timestamp. It returns the number of seconds passed according to the parameter passed to the function.
Syntax

 strtotime(parameter);

Parameter

  • Time/Date
  • now(optional)

Return Type Returns the number of seconds passed since Jan 1, 1970.



getDate() This function return the date/time information of the passed parameter(date/time);
Syntax

getDate(parameter);

Parameter The parameter is optional as it takes the current local time as default parameter.
Return Type It returns the information of the date, day, year, month etc in an array.

Code for converting a string to date

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
$time_input = strtotime("2011/05/21"); 
$date_input = getDate($time_input); 
print_r($date_input);                
?>

chevron_right


Output:

Array
(
    [seconds] => 0
    [minutes] => 0
    [hours] => 0
    [mday] => 21
    [wday] => 6
    [mon] => 5
    [year] => 2011
    [yday] => 140
    [weekday] => Saturday
    [month] => May
    [0] => 1305936000
)

Code for converting a string to dateTime

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
$input = '06/10/2011 19:00:02';
$date = strtotime($input);
echo date('d/M/Y h:i:s', $date);
?>

chevron_right


Output:

10/Jun/2011 07:00:02

Note1 We can use “D” in the place of “d” for getting the day in the output

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
$input = '05/10/2011 15:00:02';
$date = strtotime($input);
echo date('D/M/Y h:i:s', $date);
?>

chevron_right


Output:

Tue/May/2011 03:00:02

Note 2 We can use “H” in the place of “h” for getting the time in 24 Hour format in the output

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
$input = '05/10/2011 15:00:02';
$date = strtotime($input);
echo date('D/M/Y H:i:s', $date);
?>

chevron_right


Output:

Tue/May/2011 15:00:02

Similarly, the “i” and “s” could also be changed to uppercase to find different outputs, it is possible but not of much use.



My Personal Notes arrow_drop_up

A tech fanatic who can code stuff

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.