Clive Walkden

PHP, MySQL, HTML5, CSS3, jQuery code and ideas.

PHP Posts

Useful PHP date function

Useful PHP date function

in PHP
by
with 0 Comments

Here's a useful function that I use a lot for taking a database date and converting it into something human readable.

[code lang="php"]
function dateFormat($dbDate, $newFormat="jS F Y") {

// split the date into it's component parts
$year=substr($dbDate, 0,4);
$month=substr($dbDate, 5,2);
$day=substr($dbDate, 8,2);
$hour=substr($dbDate, 11,2);
$minute=substr($dbDate, 14,2);
$second=substr($dbDate, 17,2);

// recompile in the required format
return date($newFormat, mktime($hour,$minute,$second,$month,$day,$year
));
}
[/code]

Uses

The function can be used in the following way.

echo dateFormat("2010-11-01 18:00:00", "l jS")

returns

Monday 1st

echo dateFormat("2010-11-01 18:00:00")

returns

1st November 2010

Breakdown

Now I'll break the code down

[code lang="php"]function dateFormat($dbDate, $newFormat="jS F Y") { [/code]

This line sets the function name dateFormat. It also sets the parameters used throughout the function $dbDate and $newFormat also included is a default parameter for $newFormat. This is used if you do not pass a parameter when calling the function.

[code lang="php"]

// split the date into it's component parts
$year=substr($dbDate, 0,4);
$month=substr($dbDate, 5,2);
$day=substr($dbDate, 8,2);
$hour=substr($dbDate, 11,2);
$minute=substr($dbDate, 14,2);
$second=substr($dbDate, 17,2);
[/code]

This splits the passed date into it's component parts so that it can be reformed into the desired format.

[code lang="php"]
// recompile in the required format
return date($newFormat, mktime($hour,$minute,$second,$month,$day,$year));
[/code]

The final line of the function uses the mktime and date function to reprocess your date into the $newFormat supplied.

I hope you find this function useful, I use it for many sites with great success.

comments powered by Disqus