Formatting date to human readable format

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


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`;

$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

  • Date
  • strtotime