Formatting date to human readable format
53,384
Solution 1
$timestamp = "2013-09-30 01:16:06";
echo date("F jS, Y", strtotime($timestamp)); //September 30th, 2013
Note the use of S
to get the english ordinal suffix for the day.
Since you're already using strtotime
if you need a human readable data for the current time you can just use the keyword "now" as in strtotime("now")
Related sources
Solution 2
Use strtotime()
to convert that string into a Unix Timestamp, then use the date()
function to display it like you want.
echo date("F j, Y, g:i a",strtotime($ts));
Reference:
http://www.php.net/manual/en/function.strtotime.php
http://www.php.net/manual/en/function.date.php
Solution 3
I do not think that php is even needed there. Check MySQL DATE_FORMAT()
function.
Example:
SELECT DATE_FORMAT('2013-09-30 01:16:06', '%M %D, %Y %H:%i:%s') as `readable`;
Result:
September 30th, 2013 01:16:06
For real usage:
SELECT
DATE_FORMAT(`date_column`, '%M %D, %Y %H:%i:%s') as `readable`
FROM
`your_table`;
Solution 4
echo date("F d Y",strtotime("2013-09-30 01:16:06"))
Solution 5
Mysql query
select UNIX_TIMESTAMP(datetime_field) as datetime_field from table;
PHP
echo date("F d Y", $datetime_field )
Author by
soniccool
Updated on January 23, 2021Comments
-
soniccool over 3 years
Lets say in my mysql database I have a timestamp
2013-09-30 01:16:06
and lets say this variable is$ts
.How can I output this to show more like
September 30th, 2013
? -
BlitZ over 10 years@Hanky웃Panky , Thanks a lot. My english still requires improvement
:(
-
Hanky Panky over 10 yearsCheers, That's nothing big to be sad about :)